サブクラスが親クラスの関数を必要とし、サブクラスに新しいコンテンツがある場合、親クラスのメソッドをオーバーライドできます。実際の開発プロセスでは、コード量が徐々に増加するため、メンテナンスが大きな問題となり、メソッドの変更が必要な場合、自身のコードやそのサブクラスのコードに影響が及ぶため、書き換えることで問題を解決しました。
メソッドの書き換えは、メソッドの上書きやメソッドのオーバーライドとも呼ばれます。 (推奨学習: Java コース )
## これは、親クラスへのサブカテゴリの実装プロセスに書き換えられます。何も変更できません。
メソッド書き換えの特徴
サブクラスと親クラスでメソッドの宣言は同じです。サブクラスのメソッド宣言は親クラスと同じである必要があります。
サブクラスによってオーバーライドされるメソッド。メソッドの権限修飾子は親クラスの権限修飾子よりも低くすることはできません (public、protected、default、private の権限は増加します)。 order)
親クラスのプライベート メソッド、サブクラスはメソッドをオーバーライドできません
コード例
最初に Person.java 親クラスを作成します
package Rewrite; public class Person { public void eat() { System.out.println("吃饭!"); } public void work() { System.out.println("工作!"); } public void sleep() { System.out.println("睡觉!"); } }
次に Student.java サブクラスを作成します
package Rewrite; /* Student子类继承Person父类,并对父类的work()方法进行重写 */ public class Student extends Person { public void work() { super.work(); //使用super关键字调用父类方法 System.out.println("学习!"); System.out.println("娱乐!"); } }
Main.java を呼び出します
package Rewrite; public class Main { public static void main(String[] args) { Person per = new Person(); //创建父类对象 per.eat(); per.work(); per.sleep(); Student stu = new Student(); //创建子类对象 stu.work(); } }
インスタンス分析:
親クラスには 3 つのメソッドが定義されており、サブクラスでは work() メソッドが書き換えられます。
書き換えると、戻り値の型、関数名、関数のパラメータ リストはすべて同じです
サブクラスで super キーワードを使用して親クラスのメソッドを呼び出すことができます
以上がJavaでの書き換えとは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。