以下面的Person类和Student类为例:
定义Person类的两个属性name和age; 这个就是Person这一类都具备的变量(属性),成为类变量
而下面学生继承Person后,所具有的学号变量(属性),就被成为实体变量,在建立学生的对象中出现
下面是代码:
- class Person //定义Person类
- {
- private String name; //定义Person类的两个属性name和age; 这个就是Person这一类都具备的变量(属性),成为类变量
- //而下面学生继承Person后,所具有的学号变量(属性),就被成为实体变量,在建立学生的对象的时候,才会出现
- private int age;
- Person(String name,int age)//构造函数初始化
- {
- this.name = name;
- this.age = age;
- }
- void show() //show方法,说出自己的属性
- {
- System.out.println("My name is:"+name+"\t"+"I am "+age+" years old");
- }
- }
- class Student extends Person //Student继承了Person。
- {
- private int studentid; //增加了一个特有属性学号————————————————————实体变量
- Student(String name,int age) //当未分配学号的时候,构造函数初始化
- {
- super(name,age); //调用父类的构造函数初始化
- }
- Student(String name,int age,int studentid)//当有name、age、studentid三个属性的构造函数
- {
- this(name,age);
- this.id = studentid;
- }
- void show() //重写show()方法
- {
- super.show();
- System.out.println("My id is "+id);//jvm报错,因为操作了父类里面的私有属性。
- }
- }
- class ExtendsDemo3 //主函数
- {
- public static void main(String[] args)
- {
- Student a = new Student("张三",23);
- a.show();
- }
- }
复制代码 |