Sintaxe do método readfields () em java no Ubuntu 20.04
A sintaxe do Java suporta a função Readfields () é a seguinte:
Public ObjectInputStream.Getfield readfields ();O objeto Getfields verifica os campos que podem ser acessados para esta classe usando a classe ObjectStream do objeto atual. Durante esta chamada específica para o método readObject da classe, o objeto Getfields fornecido por Readfields é o único que é válido. Somente uma vez que o Readfields foi invocado pode ser lido diretamente do fluxo.
Parâmetro do método readfields ():
Não há parâmetros que aceite.
Retornar tipo de método readfeilds ():
ObjectInputStream é do tipo de retorno do método. Quando você chama Getfield, ele retornará um objeto chamado getfield que indica que os campos permanentes do objeto não são serializados.
Exemplo 1: Usando o método readfield () em java no Ubuntu 20.04
A função readfields () do java.io.A classe ObjectInputStream é demonstrada no exemplo abaixo.
Aqui, incluímos o pacote Java “Java.io ”com a palavra -chave“ importar ”. Em seguida, estabelecemos a classe "RF1" com o modificador "público". Construímos o método principal dentro da classe "RF1" que também lança a "exceção" porque a classe Java "Excection" também é definida com o método principal se ocorreu. Dentro do corpo principal, temos a declaração dos objetos como "fos" pelo FileOutputStream, o "OBJ" pelo objectOutputStream, o objeto "fis" pelo FileInputStream e o objeto "OIS" pela classe "ObjectInputStream".
Os objetos “fis” e “fos” levam o arquivo “arquivo.txt ”como entrada. O objeto "Obj" e "Ois" é usado para mostrar o fluxo desses arquivos. Em seguida, utilizamos o método writeObject () com a instância "OBJ", que é chamada de função readfields (). O WriteObject escreve os números inteiros da instância "Obj". O fluxo será lavado pelo método Flush (), como o adicionamos após o método WriteObject. Depois disso, temos uma instância "RF" dos leitores que chamavam o método ReadObject para ler o objeto "OIS" e imprimir os campos.
Em seguida, temos uma classe estática, "Readfields", que implementa uma classe serializável e depois declara a string "mystr" e define com o valor da string. Lá, chamamos o método de "readObject", que define a instância "s" para o fluxo de entrada do objeto. O método readfields () leu os campos e os devolve com o acesso do método de retorno.
O compilador Java, sem qualquer IoException, exibe os campos do método readfields ().
Exemplo 2: Usando o método Readfeilds com a validação de strings em Java no Ubuntu 20.04
Como vimos em um exemplo anterior, o método readfields () retornou o campo depois de lê -lo. Agora, estamos realizando a mesma operação, mas com um cenário complexo. Vamos validar a primeira corda e depois exibir a segunda.
Construímos a classe "RF2", que tem o método principal. Dentro dos colchetes do método principal, definimos a string como "S1" e temos o valor com representação de string. Em seguida, usamos o bloco de tentativa. O bloco de tentativa tem a criação do arquivo “Arquivo.txt "chamando a classe de" fileouputstream ". A instância é definida como "FileIn" para a entrada do fluxo que é passado no objeto "FileOut".
Então, chamamos os métodos de "WriteObject" e "writeutf". O método WriteObject é usado para escrever o fluxo da operação "Demo", e o método writeutf () leva o "S1" para escrever a string na saída como um fluxo básico. Depois disso, lemos o objeto com o método readObject e exibimos a string. O método Readfields é empregado para ler os campos do "S2". A declaração IF é chamada para Validação do Register. O bloco de captura tratará as exceções de entrada e saída dos fluxos.
Em seguida, temos uma classe de “demonstração” para serialização da string e para a validação de objetos desserializados, e também implementamos a classe ObjectInputValidation. Aqui, definimos o valor da string para a variável "S2". Temos um método "readObject" para esta classe, que tem o método Readfields para ler campos e o método do registroValidação. Em seguida, retorne a string dentro do "S2" ao método principal.
Compilar e executar o script de Java acima mencionado resultará no seguinte resultado.
Exemplo 3: Usando o método getfields () para obter o campo da classe em Java no Ubuntu 20.04
O campo público desta classe, juntamente com seus membros, pode ser obtido usando a função getfield () do “java.Lang.Classe ”Classe. A função retorna objetos de campo que representam o campo solicitado desta classe.
Nossa classe "getfield" é criada com o objeto "myobj" dentro dele. Em seguida, empregamos o principal método dentro da classe. Lá, temos uma variável de nome de classe que invocou o método forname (). O objeto vinculado à classe será retornado por este método. Depois disso, utilizamos o método getfield () para obter o campo da classe.
Depois de compilar o código, recebemos o nome do objeto de classe e o campo da classe abaixo.
Conclusão
Para ler dados serializados para transmissão de rede, utilize os métodos readfields (). Os valores do campo serializável são lidos no fluxo usando o método Readfields, o que os torna acessíveis através da classe Getfield. Um método de classe readObject serializável é o único local do qual o método Readfields pode ser chamado. Além disso, introduzimos outro método que é Getfield () que retorna o nome de campo da classe especificada.