Konzept: Vererbung ist eines der drei Hauptmerkmale der objektorientierten Grammatik und kann die Coderedundanz reduzieren und die Programmiereffizienz verbessern. Durch das Erben einer Unterklasse können Sie bestimmte Attribute und Methoden in der übergeordneten Klasse frei aufrufen. Eine Unterklasse kann nur eine übergeordnete Klasse erben, und eine übergeordnete Klasse kann von mehreren Unterklassen geerbt werden. Es ist, als würde man uns zeigen, dass Kinder im Laufe ihres Lebens das Eigentum ihres Vaters erben. Der Vorteil des Überschreibens besteht darin, dass Unterklassen ihr eigenes Verhalten nach Bedarf definieren können. Das heißt, Unterklassen können die Methoden der übergeordneten Klasse nach Bedarf implementieren. Genau wie Golden Retriever und Huskys stammen ihre Eigenschaften von Hunden, Hamstern und Eichhörnchen, ihre Eigenschaften stammen von Mäusen und ihre Unterschiede sind genetische Mutationen, was gleichwertig ist zum Umschreiben
Merkmale der Vererbung:
1): Java unterstützt nur die Vererbung mit einem Stamm, das heißt, eine Klasse kann nur eine direkte übergeordnete Klasse haben, und eine übergeordnete Klasse kann dies haben mehrere Unterklassen.
2): Extrahieren Sie die öffentlichen Attribute der Unterklasse, um übergeordnete Klassenattribute für die Vererbung zu generieren.
3): Die Unterklasse kann die privat geänderten Attribute nicht erben oder überschreiben der übergeordneten Klasse und Ressourcen
Eigenschaften des Überschreibens:
1). Die von der Unterklasse überschriebene Methode muss denselben Methodennamen und dieselbe Parameterliste haben wie die überschriebene Methode der übergeordnete Klasse# 🎜🎜#
2). Der Rückgabewerttyp der von der Unterklasse überschriebenen Methode darf nicht größer sein als der überschriebene Rückgabewerttyp der übergeordneten Klasse 3). Wird von der überschriebenen Unterklasse verwendet. Die Zugriffsberechtigung darf nicht geringer sein als die Zugriffsberechtigung der überschriebenen Methode der übergeordneten Klasse. Die Unterklasse kann die in der übergeordneten Klasse als privat deklarierte Methode (d. h. privates Attribut) nicht überschreiben#🎜🎜 #4). Von der Unterklassenmethode ausgelöst. Die Ausnahme darf nicht größer sein als die Ausnahme der überschriebenen Methode der übergeordneten Klasse.
Erforderliche Methoden oder Schlüsselwörter:
extends: Wir können über dieses Schlüsselwort erben, im Schlüssel Die Vererbung kann erreicht werden, indem die Klasse oder Methode, die geerbt werden muss, nach dem Wort
super() geschrieben wird: Wir können diese Methode verwenden, um die Attribute oder Methoden von aufzurufen unsere geerbte Elternklasse mit
# 🎜🎜#Testklasse:package com.ytzl.total; /*继承*/ public class inherit { public static void main(String[] args) { son son = new son();//调用子类 System.out.println(son.a);//调用子类中的属性 son.a=2;//可以通过子类改变父类中的属性 System.out.println("更改后的父类属性"+son.a); son.myfather();//带调用父类的方法 son.money();//调用重写的方法w son.jng();//调用静态修饰方法 son.jing(); System.out.println("子类通过继承方法调用父类中的属性=>"+son.b);//调用父类中的静态属性 son.two(); } }
package com.ytzl.total; public class father { int a=0; static int b=2; private int one=4;//被私有属性修饰后将不能别子类调用或继承, protected int two=0; protected void two(){//该方法只能被子类继承重写不能被调用 System.out.println("我是protected方法"); } public void setOne(int one) { this.one = one; } public void money(){ System.out.println("我是被子类重写的方法"); System.out.println("父类的属性=>"+a); } public void myfather(){ System.out.println("我是被子类继承的方法"); } public static void jing(){ System.out.println("你好"); } public static void jng(){ System.out.println("你好"); } private void dong(){ System.out.println("私有方法"); } }
package com.ytzl.total; public class son extends father{ //方法的重写 public void money(){ super.money();//通过继承过去父类的money方法里的内容 System.out.println("重写后的方法"); System.out.println("被继承后"+super.a);//通过super来继承父类的属性 System.out.println("继承后的protected属性=>"+super.two);//通过super来继承protected方法 super.two(); } public static void jing(){//不能重写静态方法static System.out.println("不好"); } private void dong(){//不能重写或者继承父类的私有方法 System.out.println("私有方法"); } protected void two(){//重写后的protected方法 System.out.println("我是重写后的protected方法"); } }
#🎜 🎜#
Das obige ist der detaillierte Inhalt vonWas sind die Merkmale der Java-Vererbung und des Überschreibens von Methoden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!