No artigo "Do Hello World ao Orientado a Objetos" do Tutorial Java Básico, temos uma compreensão preliminar dos objetos. Os membros de dados em um objeto representam o estado do objeto. Os objetos podem executar métodos que representam ações específicas.
Além disso, também aprendemos sobre as aulas. Objetos da mesma classe pertencem ao mesmo tipo. Podemos definir classes e usar essa definição para criar objetos.
Vamos nos aprofundar nos objetos. Aprenda alguns detalhes sobre métodos e membros de dados em Java.
Chamando membros de dados do mesmo objeto
Os métodos podem chamar os membros de dados do objeto. Por exemplo, a seguir adicionamos um método getHeight() à classe Human. Este método retorna o valor do membro de dados de altura:
Copie o código do código da seguinte forma:
Teste de classe pública
{
público estático void principal(String[] args)
{
Humano aPerson = new Humano();
System.out.println(aPerson.getHeight());
}
}
classeHumano
{/**
*acessador
*/
int getHeight()
{
retorne esta altura;
}
altura interna;
}
Adicionamos o método getHeight. Este método possui um valor de retorno do tipo int. Return é usado em Java para retornar um valor.
Observe isto, que é usado para se referir ao próprio objeto. Quando criamos uma instância aPerson, ela representa o objeto aPerson. this.height refere-se à altura de uma pessoa.
este é um argumento implícito. Quando um método é chamado, mesmo que a lista de parâmetros do método não inclua isso, Java passará "silenciosamente" esse parâmetro para o método.
(Existem alguns métodos especiais que não passam isso implicitamente, veremos isso mais tarde)
isso não é necessário, o método acima pode ser escrito como:
Copie o código do código da seguinte forma:
/**
*acessador
*/
int getHeight()
{
altura de retorno;
}
Java determinará por si só que height é um membro de dados da classe. Mas ficará mais claro usando isso.
Também vimos o método /** comments */ de adicionar comentários.
lista de parâmetros de método
As definições de métodos em Java são semelhantes às funções na linguagem C. Os métodos Java também podem receber uma lista de argumentos (lista de argumentos) entre parênteses após o nome do método. A seguir definimos um método growHeight(). A função deste método é aumentar a altura de uma pessoa:
Copie o código do código da seguinte forma:
Teste de classe pública
{
público estático void principal(String[] args)
{
Humano aPerson = new Humano();
System.out.println(aPerson.getHeight());
aPerson.growHeight(10);
System.out.println(aPerson.getHeight());
}
}
classeHumano
{
/**
*acessador
*/
int getHeight()
{
retorne esta altura;
}
/**
*passar argumento
*/
void growHeight(int h)
{
esta.altura = esta.altura + h;
}
altura interna;
}
Em growHeight(), h é o parâmetro passado. Na definição da classe, o tipo do parâmetro (int) é indicado. Dentro de um método específico, podemos usar este parâmetro. Este parâmetro só é válido no escopo deste método, ou seja, growHeight().
Ao chamar, passamos 10 para growHeight(). aA altura da pessoa aumenta em 10.
Chame outros métodos no mesmo objeto
Dentro de um método, outros métodos do mesmo objeto podem ser chamados. Ao chamar, use o formato this.method(). Lembramos também que this se refere ao objeto. Então this.method() refere-se ao método method() do próprio objeto.
Por exemplo, a seguinte função RepeatBreath():
Copie o código do código da seguinte forma:
Teste de classe pública
{
público estático void principal(String[] args)
{
Humano aPerson = new Humano();
aPerson.repeatBreath(10);
}
}
classeHumano
{
respiração vazia()
{
System.out.println("hu...hu...");
}
/**
*chame respiração()
*/
nulo repetirBreath(int rep)
{
int eu;
for(i = 0; i < rep; i++) {
this.respiração();
}
}
altura interna;
}
Para facilitar o loop, no método repeatBreath(), declaramos um objeto i do tipo int. O escopo de i é limitado ao escopo do método repeatBreath().
(Isso é semelhante às variáveis automáticas nas funções da linguagem C)
Inicialização de membro de dados
Em Java, existem muitas maneiras de inicializar membros de dados. Por exemplo, no exemplo getHeight() acima, embora nunca forneçamos um valor para altura, Java escolhe um valor inicial padrão de 0 para nós.
Valores iniciais padrão para membros de dados de tipos básicos:
1. Tipo numérico: 0
2.Valor booleano: falso
3. Outros tipos: nulo
Podemos fornecer o valor inicial do membro de dados ao declará-lo. Isso é chamado de inicialização explícita. O valor de inicialização do display deve ser gravado no programa:
Copie o código do código da seguinte forma:
Teste de classe pública
{
público estático void principal(String[] args)
{
Humano aPerson = new Humano();
System.out.println(aPerson.getHeight());
}
}
classeHumano
{/**
*acessador
*/
int getHeight()
{
retorne esta altura;
}
altura interna = 175;
}
Aqui, o valor inicial da altura do membro de dados é 175, não o padrão 0.
Existem outras maneiras de inicializar objetos em Java, que apresentarei mais tarde.
Resumir
retornar
este, este.campo, este.método()
Valor inicial padrão, inicialização explícita