When a subclass needs the functions of the parent class and the subclass has new content, it can override the methods in the parent class. In the actual development process, as the amount of code gradually increases, maintenance has become a big problem. If a method needs to be modified, its own code and its subclass code will be affected, and rewriting is good. solved the problem.
Method rewriting is also called method overwriting and method overriding. (Recommended Learning: Java Course )
## This is rewritten to the implementation process of sub -category to the parent class Nothing can be changed.
Features of method rewriting
In the subclass and parent class, the method declaration is the same.Methods of the subclass The declaration must be the same as the parent classThe method to be overridden by the subclass, the permission modifier of the method cannot be lower than that of the parent class (public, protected, default, private permissions increase in order)Parent Class private methods, subclasses cannot override methodsCode examples
Create the Person.java parent class firstpackage Rewrite; public class Person { public void eat() { System.out.println("吃饭!"); } public void work() { System.out.println("工作!"); } public void sleep() { System.out.println("睡觉!"); } }
then Create Student.java subclass
package Rewrite; /* Student子类继承Person父类,并对父类的work()方法进行重写 */ public class Student extends Person { public void work() { super.work(); //使用super关键字调用父类方法 System.out.println("学习!"); System.out.println("娱乐!"); } }
Call in 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(); } }
Instance analysis:
Three methods are defined in the Person parent class, and the work() method is rewritten in the subclass.When rewriting, the return value type, function name, and parameter list of the function are all SameYou can use the super keyword in a subclass to call the parent class methodThe above is the detailed content of What is rewriting in java. For more information, please follow other related articles on the PHP Chinese website!