Argumentos por ref, acessando DLL

Boa noite!

Estou utilizando uma DLL e seu metodos com java, mas um dos metodos é necessario passar argumentos por ref para recuperar os dados apos a chamada do metodo.
Segue abaixo exemplo do codigo em C#:

int s = 20;
byte[] b = new byte[21];
sName(b, ref s); // << esse é o metodo
return System.Text.Encoding.ASCII.GetString(b, 0, s - 1);

tentei fazer da seguinte forma em java:

int s = 20;
byte[] b = new byte[21];
GetPlayerName(b, s);

Mas ao executar recebo uma mensaguem de acesso violado na dll.
Acredito que não esteja sendo possivel atribuir os dados a variavel passada como argumento.
Teria uma forma de faze-lo em java? alguem poderia me dar uma ajudinha por favor?

Com java não tem como passar com ref? é isso!?

Desespero modo: On.
Alguem com conhecimento no assunto poderia ajudar? já procurei no google mas não encontrei algo que desse pra entender.