吴裕雄--天生自然JAVA面向对象高级编程学习笔记:继承的基本实现

class Person{                    // 定义Person类
    private String name ;        // 定义name属性
    private int age ;            // 定义age属性
    public void setName(String name){
        this.name = name;    
    }
    public void setAge(int age){
        this.age = age ;
    }
    public String getName(){
        return this.name ;
    }
    public int getAge(){
        return this.age ;
    }
};
class Student{                    // 定义Student类
    private String name ;        // 定义name属性
    private int age ;            // 定义age属性
    private String school ;        // 定义school属性
    public void setName(String name){
        this.name = name;    
    }
    public void setAge(int age){
        this.age = age ;
    }
    public String getName(){
        return this.name ;
    }
    public int getAge(){
        return this.age ;
    }
    public void setSchool(String school){
        this.school = school ;
    }
    public String getSchool(){
        return this.school ;
    }
};
class Person{                    // 定义Person类
    private String name ;        // 定义name属性
    private int age ;            // 定义age属性
    public void setName(String name){
        this.name = name;    
    }
    public void setAge(int age){
        this.age = age ;
    }
    public String getName(){
        return this.name ;
    }
    public int getAge(){
        return this.age ;
    }
};
class Student extends Person{                    // 定义Student类
    // 此处不添加任何的代码
};
public class ExtDemo02{
    public static void main(String arsg[]){
        Student stu = new Student()    ;// 实例化子类对象
        stu.setName("张三") ;    // 此方法在Student类中没有明确定义
        stu.setAge(30) ;
        System.out.println("姓名:" + stu.getName() + ",年龄:" + stu.getAge() ) ;
    }
};
class Person{                    // 定义Person类
    private String name ;        // 定义name属性
    private int age ;            // 定义age属性
    public void setName(String name){
        this.name = name;    
    }
    public void setAge(int age){
        this.age = age ;
    }
    public String getName(){
        return this.name ;
    }
    public int getAge(){
        return this.age ;
    }
};
class Student extends Person{                    // 定义Student类
    private String school ;        // 定义school属性
    public void setSchool(String school){
        this.school = school ;
    }
    public String getSchool(){
        return this.school ;
    }

};
public class ExtDemo03{
    public static void main(String arsg[]){
        Student stu = new Student()    ;// 实例化子类对象
        stu.setName("张三") ;    // 此方法在Student类中没有明确定义
        stu.setAge(30) ;
        stu.setSchool("清华大学") ;
        System.out.println("姓名:" + stu.getName() + ",年龄:" + stu.getAge() + ",学校:" + stu.getSchool() ) ;
    }
};
class A{
};
class B{
};
class C extends A,B{    // 错误,同时继承了两个父类
};
class A{
};
class B extends A{
};
class C extends B{
};
class Person{                    // 定义Person类
    private String name ;        // 定义name属性
    private int age ;            // 定义age属性
    public void setName(String name){
        this.name = name;    
    }
    public void setAge(int age){
        this.age = age ;
    }
    public String getName(){
        return this.name ;
    }
    public int getAge(){
        return this.age ;
    }
};
class Student extends Person{                    // 定义Student类
    public void fun(){
        System.out.println("父类中的name属性:" + name) ;    // 错误,无法访问
        System.out.println("父类中的age属性:" + age) ;    // 错误,无法访问
    }

};
class Person{                    // 定义Person类
    private String name ;        // 定义name属性
    private int age ;            // 定义age属性
    public void setName(String name){
        this.name = name;    
    }
    public void setAge(int age){
        this.age = age ;
    }
    public String getName(){
        return this.name ;
    }
    public int getAge(){
        return this.age ;
    }
};
class Student extends Person{                    // 定义Student类
    public void fun(){
        System.out.println("父类中的name属性:" + getName()) ;    // 正确,间接访问
        System.out.println("父类中的age属性:" + getAge()) ;    // 正确,间接访问
    }

};

猜你喜欢

转载自www.cnblogs.com/tszr/p/12152987.html
今日推荐