Programmation Objet
Cette partie est consacrée plus en particulier à la programmation orientée objet, il est conseillé d'être familier avec les concepts de formatage java pour comprendre la syntaxe
De manière générale, lorsqu'on veut accéder à une méthode depuis l'extérieur d'une classe, on utilise le .
// Dans un fichier Main.java
public class Main {
public static void main(String[] args){
}
public String stringMethod(){
return new String(" ");
}
}
class SecondClass {
public static void main(String[] args){
Main.main(args);
Main main = new Main();
main.stringMethod();
}
}
Ici il est important de voir la différence entre la méthode d'appel d'une fonction static
et non-static. Une méthode static
est liée à la classe auquel elles appartient c'est à dire Main
, tandis qu'une méthode qui ne l'est pas est liée à l'instance de la classe, on doit d'abord l'initialisée puis appelé la méthode
On peut également définir une classe qui dépend d'une autre classe et a des paramètres
public class Main<E> { // la classe Main dépend d'une classe inconnue , E
public E e; // variable de classe, de type E et nommée e
public Main(E e){ // fonction pour initialisé la variable de classe,
//appelée lors de la construction
this.e = e; // parle de la variable de classe en utilisant `this`
}
public static void main(String[] args){
Main<Integer> main = new Main<>(0);
}
}
Ici le <E>
specicifie la classe de E
, on ne sait pas avant qu'on initialise cette classe, tout la classe Main
est bassée sur E
qui est inconnu
Pour initialiser il faut alors indiqué à la classe principale, la classe E
, comme suis : Main<Integer>
et lorsque l'on veut créer des variables propres à la classe, on créer une fonction constructeur ici public Main(E e)
qui va donner une valeur à la variable de classe e
déclarée par public E e;