Instancier un objet en Java
En Java, un objet est appelé instance d’une classe. Par exemple, supposons qu’une classe nommée car
, puis SportsCar
, SedanCar
, StationWagon
, etc., puisse être considérée comme les objets de cette classe.
Dans ce tutoriel, nous verrons comment instancier des objets en Java.
En utilisant le mot-clé new
, nous pouvons créer des instances d’une classe en Java. N’oubliez pas que nous n’instancions pas de méthodes en Java car les objets sont des instances de classes et non des méthodes. Une méthode est juste un comportement que possède la classe.
En créant un objet d’une classe, nous pouvons accéder à ses méthodes publiques via une autre classe. Comme dans le code ci-dessous, nous créons une instance d’une deuxième classe dans la première classe, puis utilisons les méthodes de la deuxième classe dans la première classe.
// creating a class named first
public class First {
public static void main(String[] args) {
Second myTest = new Second(1, 2); // instantiating an object of class second
int sum = myTest.sum(); // using the method sum from class second
System.out.println(sum);
}
}
// creating a class named second
class Second {
int a;
int b;
Second(int a, int b) {
this.a = a;
this.b = b;
}
public int sum() {
return a + b;
}
}
Production:
3
Si l’on souhaite accéder aux méthodes d’une classe dans une autre méthode de la même classe, il est inutile d’instancier un objet si la méthode est déclarée static
.
Par exemple,
public class Testing {
private static int sample(int a, int b) {
return a + b;
}
public static void main(String[] args) {
int c = sample(1, 2); // method called
System.out.println(c);
}
}
Production:
3
Dans l’exemple ci-dessus, nous pouvons appeler la méthode sample()
car les deux méthodes sont de la même classe, et sample()
est déclaré static
, donc aucun objet n’est requis.
Mais nous pouvons toujours effectuer l’instanciation de l’objet si les deux méthodes sont de la même classe, comme illustré ci-dessous. C’est fait si la méthode n’est pas déclarée static
.
Voir le code ci-dessous.
public class Testing {
private int Sample() {
int a = 1;
int b = 2;
int c = a + b;
return c;
}
public static void main(String[] args) {
Testing myTest = new Testing();
int result = myTest.Sample();
System.out.println(result);
}
}
Production:
3