Saudações, colegas. Resolvi mostrar diversas maneiras de inicializar campos em Java. O artigo pode ser útil para quem está apenas começando a aprender programação. Para executar exemplos de demonstração, vamos criar uma classe Java Demo com um método main() . No método main() , imprimiremos algo na tela para garantir que o programa seja executado:
Como podemos passar valores reais para nossos campos (por exemplo, o nome “Tom” e a idade “dois anos”)? A primeira forma é inicializar os campos imediatamente durante a declaração:
Vamos também adicionar um construtor vazio sem parâmetros para fazer nosso exemplo anterior funcionar. No método
public class Demo {
public static void main(String[] args) {
System.out.println("Hello JavaRush.");
}
}
A seguir, vamos criar uma classe Java cat e adicionar vários campos a ela: nome, idade.
class Cat {
String name;
int age;
}
No método main()
criaremos dois gatos. Vamos tentar exibir seu nome e idade:
public class Demo {
public static void main(String[] args) {
Cat cat1 = new Cat();
Cat cat2 = new Cat();
System.out.println("Name первого кота: " + cat1.name);
System.out.println("Возраст первого кота: " + cat1.age);
System.out.println();
System.out.println("Name второго кота: " + cat2.name);
System.out.println("Возраст второго кота: " + cat2.age);
}
}
class Cat {
String name;
int age;
}
Executando o programa, obtemos a saída:
Name первого кота: null
Возраст первого кота: 0
Name второго кота: null
Возраст второго кота: 0
Como não inicializamos esses campos, eles receberam valores padrão. String
refere-se a tipos de referência e, para todos os tipos de referência, o valor padrão é null
. int
pertence a tipos primitivos. Cada tipo primitivo tem seu próprio valor padrão:
public class Demo {
public static void main(String[] args) {
Cat cat1 = new Cat();
Cat cat2 = new Cat();
System.out.println("Name первого кота: " + cat1.name);
System.out.println("Возраст первого кота: " + cat1.age);
System.out.println();
System.out.println("Name второго кота: " + cat2.name);
System.out.println("Возраст второго кота: " + cat2.age);
}
}
class Cat {
String name = "Том";
int age = 2;
}
Executamos o programa e vemos que os campos são inicializados com nossos valores:
Name первого кота: Том
Возраст первого кота: 2
Name второго кота: Том
Возраст второго кота: 2
Além disso, não importa quantos gatos criemos, todos terão o mesmo nome e idade. Ou seja, simplesmente alteramos os valores null e 0 para “Volume” e 2. O próximo método de inicialização é através do construtor. Vamos criar um construtor para o gato com dois parâmetros. Normalmente, os nomes dos parâmetros são iguais aos nomes dos campos. Neste caso, você precisa usar a palavra para se referir aos campos this
, e os parâmetros do construtor podem ser acessados da maneira usual:
public Cat(String name, int age) {
this.name = name;
this.age = age;
}
De novo:
main()
adicionaremos mais dois gatos usando um construtor com parâmetros.
public class Demo {
public static void main(String[] args) {
Cat cat1 = new Cat();
Cat cat2 = new Cat();
System.out.println("Name первого кота: " + cat1.name);
System.out.println("Возраст первого кота: " + cat1.age);
System.out.println();
System.out.println("Name второго кота: " + cat2.name);
System.out.println("Возраст второго кота: " + cat2.age);
Cat cat3 = new Cat("Рыжик", 5);
Cat cat4 = new Cat("Barsik", 9);
System.out.println();
System.out.println("Name третьего кота: " + cat3.name);
System.out.println("Возраст третьего кота: " + cat3.age);
System.out.println();
System.out.println("Name четвертого кота: " + cat4.name);
System.out.println("Возраст четвертого кота: " + cat4.age);
}
}
class Cat {
String name;
int age;
public Cat(String name, int age) {
this.name = name;
this.age = age;
}
public Cat() {
}
}
Vamos executar o programa:
Name первого кота: null
Возраст первого кота: 0
Name второго кота: null
Возраст второго кота: 0
Name третьего кота: Рыжик
Возраст третьего кота: 5
Name четвертого кота: Барсик
Возраст четвертого кота: 9
Como você pode ver, os gatos criados desta forma possuem maior individualidade. Existem outras maneiras de inicializar campos em Java, mas são suficientes para você começar.
GO TO FULL VERSION