继承
在Java中所有的类都继承于 java.lang.Object。当一个类没有显式使用继承的两个关键字(extends, implements),则默认继承 Object类。
继承可以使得子类具有父类的属性和方法,还可以在子类中重新定义,追加属性和方法。(注:如果父类的属性是private型,子类无法调用)
class Person { int age =100; String name = "zhang"; { System.out.println("Person"); } } class Person1 extends Person{ { System.out.println("Person1"); } } public class Main { public static void main(String[] args) { Person1 s = new Person1(); System.out.println(s.a); System.out.println(s.name); } }
运行截图:
子类Person1可以调用父类Person的name 和 age。
在子类中调用父类的方法,可以使用super()。
class Person { int age; String name ; Person(int age, String name){ this.age = age; this.name = name; } } class Person1 extends Person{ private boolean gender; Person1(int age, String name , boolean gender) { super(age, name); this.gender = gender; } @Override public String toString() { return "Person1 [gender=" + gender + ", age=" + age + ", name=" + name + "]"; } } public class Main { public static void main(String[] args) { Person1 s = new Person1(1 , "zhang" , true); System.out.println(s); } }
运行截图:
当子类的方法与父类名称相同时,子类的方法会覆盖父类,也就是方法重写
class Person { void show() { System.out.println("person"); } } class Person1 extends Person { void show() {//覆盖父类的show() System.out.println("person11"); } } public class Main { public static void main(String[] args) { Person1 s = new Person1(); s.show(); } }
运行截图:
标签:name,继承,age,Person,Person1,class,String From: https://www.cnblogs.com/kandh/p/17806115.html