Contrôle de l'accès aux membres d'une classe.
privé : ne peut être utilisé que dans votre propre classe
public : peut être utilisé n'importe où
protected : package-private peut être utilisé sous le même package, et peut également être utilisé dans des sous-classes qui en héritent sous d'autres packages.
no-modifier : package-private ne peut être utilisé que sous le même package (le même que protected pour le même package). Cela ne fonctionne pas dans d'autres packages.
Remplacement et surcharge Remplacement
Remplacement : est utilisé pour les sous-classes Entre celui-ci et le classe parent, à l'exception du changement dans le corps de la fonction, tout le reste reste inchangé. Et le contrôleur d'accès de la sous-classe prioritaire ne peut pas être supérieur à la classe parent.
Surcharge : se situe entre des méthodes du même type. La liste des paramètres doit changer et le type de retour peut changer ou non.
Polymorphisme Le polymorphisme
peut généralement être compris comme
ParentClass obj = new ChindClass(); //A
ChildClass obj2 = new ChildClass(); >ChildClass obj3 = new ParentClass(); //Exemple d'erreur C
Laissez-moi vous expliquer pourquoi il existe ce paramètre. Pour A, nous déclarons ParentClass, cela équivaut alors à ouvrir des salles séparées en mémoire pour les variables et les méthodes de ParentClass. Lorsque nous en créons de nouvelles, c'est comme si quelqu'un venait réellement à ChildClass, car les variables et les méthodes de ChildClass doivent être numérotées. supérieur ou égal au nombre dans ParentClass, donc les chambres que nous avons ouvertes auparavant sont toutes pleines, donc l'hôtel est très heureux et reste autant que nous l'avons réservé. Pour C, nous avons réservé une chambre en utilisant les variables et méthodes de ChildClass, mais le nombre réel de personnes venant de ParentClass, et le nombre est évidemment inférieur au nombre de personnes de ChildParent. Si la réservation n'est pas satisfaisante, l'hôtel. sera très en colère et vous signalera une erreur.
Le remplacement et la surcharge sont des formes importantes de polymorphisme.
Classe abstraite La classe abstraite
la classe abstraite peut contenir ou non des fonctions abstraites, les fonctions abstraites doivent être qualifiées avec le mot clé abstract.
Tant qu'une classe contient une fonction abstraite, la classe doit être modifiée avec le mot-clé abstract. Idem dans ses sous-classes.
Interface Interface
L'interface est quelque chose de plus extrême qu'une classe abstraite. Toutes les méthodes qu'il contient doivent être des méthodes abstraites et ne peuvent pas contenir de champs d'instance. Toutes les constantes telles que int doivent être statiques et finales.
implémenter Cela doit être la même chose que abstract pour implémenter toutes les méthodes abstraites.
Connaissances avancées Java
Classe générique
Très facile à pass L'exemple suivant est évident. Par exemple, arraylist ou hashmap sont tous génériques
. Sérialiser la chaîne SérialisationLa sérialisation est simplement une technologie ou un processus de conversion d'objets instanciés existants en tableaux d'octets. Il présente de nombreux avantages, n’hésitez pas à y jeter un œil.
http://stackoverflow.com/questions/2232759/what-is-the-Purpose-of-serialization-in-java
package Generic; //generic class public class GenericMethodTest< A,Z > { //generic variable public A a; public void setA( A a) { this.a = a; } //generic methods public A getA () { return this.a; } public void printArray ( Z[] inArray) { for ( Z temp : inArray) { System.out.println(temp); } } public static < B > void printArray_2 (B[] inArray) { for (B temp : inArray) { System.out.println(temp); } } }
package Implement; import Generic.GenericMethodTest; public class a{ public static void main (String[] args) { GenericMethodTest<Integer,String> gm = new GenericMethodTest<Integer,String>() ; gm.setA(10); String[] ss = {"aaa", "bbb", "ccc"}; Double [] bb = {1.0, 2.0, 3.0}; gm.printArray(ss); gm.printArray_2(ss); gm.printArray_2(bb); } }
Remarque : Pour certaines zones que nous ne souhaitons pas sérialiser, nous pouvons utiliser le mot-clé
pour les modifier.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!