-Est-ce que la classe elle-même l'a? Plage de divulgation?
――A part "quand utiliser" --Toutes les classes sont fixées comme publiques --Divers
C'est la forme la plus simple Java a un modificateur robuste sur la méthode principale, ce qui rend difficile le démarrage.
Calculator.java
package jbasic;
public class Calculator {
int add(int number1, int number2) {
int result = number1 + number2;
return result;
}
}
Une instance de la classe dans laquelle la méthode est écrite a été créée | La classe dans laquelle la méthode est écrite n'a pas été instanciée | |
---|---|---|
Même paquet | ○ | × |
Le paquet est différent | × | × |
Seller.java
package jbasic; //Même paquet
public class Seller {
public static void main(String[] args) {
Calculator calc = new Calculator(); //Génération d'instance
System.out.println(calc.add(10,5)); //OK!
}
}
Seller2.java
package jbasic; //Même paquet
public class Seller2 {
public static void main(String[] args) {
//Pas d'instanciation
System.out.println(Calculator.add(10,5)); //Se fâcher de ne pas référencer statiquement des méthodes non statiques
}
}
Avec cela, vous pouvez frapper la méthode sans l'instancier.
Calculator.java
package jbasic;
public class Calculator {
static int add(int number1, int number2) {
int result = number1 + number2;
return result;
}
}
Une instance de la classe dans laquelle la méthode est écrite a été créée | La classe dans laquelle la méthode est écrite n'a pas été instanciée | |
---|---|---|
Même paquet | ○ | ○ |
Le paquet est différent | × | × |
Seller2.java
package jbasic; //Même paquet
public class Seller2 {
public static void main(String[] args) {
//Pas d'instanciation
System.out.println(Calculator.add(10,5)); //OK!
}
}
Robot.java
package jmaster; //Paquet différent
public class Robot {
public static void main(String[] args) {
System.out.println(Calculator.add(10,5)); //Mettez-vous en colère pour rendre la classe publique
}
}
Si vous ajoutez public, vous pouvez utiliser la méthode de la classe des autres packages.
Calculator.java
package jbasic;
public class Calculator {
public static int add(int number1, int number2) {
int result = number1 + number2;
return result;
}
}
Une instance de la classe dans laquelle la méthode est écrite a été créée | La classe dans laquelle la méthode est écrite n'a pas été instanciée | |
---|---|---|
Même paquet | ○ | ○ |
Le paquet est différent | ○ | ○ |
Robot.java
package jmaster; //Paquet différent
import jbasic.Calculator; //Importation de classe requise
public class Robot {
public static void main(String[] args) {
System.out.println(Calculator.add(10,5)); //OK!
}
}
Recommended Posts