Saluti, colleghi. Ho deciso di mostrare diversi modi per inizializzare i campi in Java. L'articolo può essere utile per coloro che hanno appena iniziato a imparare a programmare. Per eseguire esempi demo, creiamo una classe Java Demo con un metodo main() . Nel metodo main() stamperemo qualcosa sullo schermo per assicurarci che il programma venga eseguito:
Come possiamo trasferire valori reali nei nostri campi (ad esempio, il nome "Tom" e l'età "due anni")? Il primo modo è inizializzare i campi immediatamente durante la dichiarazione:
Aggiungiamo anche un costruttore vuoto senza parametri per far funzionare il nostro esempio precedente. Nel metodo
public class Demo {
public static void main(String[] args) {
System.out.println("Hello JavaRush.");
}
}
Successivamente, creiamo una classe cat Java e aggiungiamo diversi campi: nome, età.
class Cat {
String name;
int age;
}
Nel metodo main()
creeremo due gatti. Proviamo a visualizzare il loro nome e la loro età:
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;
}
Eseguendo il programma, otteniamo l'output:
Name первого кота: null
Возраст первого кота: 0
Name второго кота: null
Возраст второго кота: 0
Poiché non abbiamo inizializzato questi campi, hanno ricevuto valori predefiniti. String
si riferisce ai tipi di riferimento e per tutti i tipi di riferimento il valore predefinito è null
. int
appartiene ai tipi primitivi. Ogni tipo primitivo ha il proprio valore predefinito:
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;
}
Eseguiamo il programma e vediamo che i campi sono inizializzati con i nostri valori:
Name первого кота: Том
Возраст первого кота: 2
Name второго кота: Том
Возраст второго кота: 2
Inoltre, non importa quanti gatti creeremo, avranno tutti lo stesso nome ed età. Cioè, abbiamo semplicemente cambiato i valori null e 0 in "Volume" e 2. Il successivo metodo di inizializzazione avviene tramite il costruttore. Creiamo un costruttore per il gatto con due parametri. Di solito i nomi dei parametri sono uguali ai nomi dei campi. In questo caso, è necessario utilizzare la parola per fare riferimento ai campi this
e si può accedere ai parametri del costruttore nel solito modo:
public Cat(String name, int age) {
this.name = name;
this.age = age;
}
Ancora:
main()
aggiungeremo altri due gatti utilizzando un costruttore con parametri.
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() {
}
}
Eseguiamo il programma:
Name первого кота: null
Возраст первого кота: 0
Name второго кота: null
Возраст второго кота: 0
Name третьего кота: Рыжик
Возраст третьего кота: 5
Name четвертого кота: Барсик
Возраст четвертого кота: 9
Come puoi vedere, i gatti creati in questo modo hanno una maggiore individualità. Esistono altri modi per inizializzare i campi in Java, ma questi sono sufficienti per iniziare.
GO TO FULL VERSION