标签:turn 示例 私有属性 system 实例化 blog name dsd []
代码如下:
package hello; class Person{ private String name; private int age; public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } } class Student extends Person{ public void tell(){ System.out.println(getName() + " " + getAge()); } } public class ExtendsDemo { public static void main(String[] args) { Student student = new Student(); student.setAge(20); student.setName("zhangsan"); student.tell(); } }
我们通过
class Student extends Person
来完成 Student 对象 对 Person 对象的继承,继承后在 Student 中就可以访问父类中的属性和方法,当然,在上述的示例中,父类中的私有属性(name 和 age)通过 private 加以封装,因此需要通过 getName 和 getAge 来完成其访问。
继承的两个限制:
1. Java 中只能继承一个对象(在 Python 中可继承多个对象)
2. 子类不能直接访问父类中的私有属性
在子类对象实例化之前,必须先调用父类中的构造方法,在调用子类的构造方法。代码如下:
package hello; class Father{ public Father(){ System.out.println("父类的构造方法"); } } class Son extends Father{ public Son(){ System.out.println("子类的构造方法"); } } public class ExtendsDemo { public static void main(String[] args) { Son son = new Son(); } }
程序输出:
父类的构造方法 子类的构造方法
标签:turn 示例 私有属性 system 实例化 blog name dsd []
原文地址:http://www.cnblogs.com/changzhi/p/6746204.html