继承

时间:2020-05-25
本文章向大家介绍继承,主要包括继承使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
public class Hello {
    public static void main(String[] args) {
        Person  p = new Student("张三","软件7班");
        System.out.println(p.name);
        Student s = (Student)p;
        
        // 类型转换指向的都是同一个对象不会改变对象
        Student s1 = new Student("李四","计算机1班");
        Person p1 = s1;
        p1.name = "wang wu";
        System.out.println( s1.name);//wang wu
 
    }
}
// 继承:子类拥有父类去除构造函数,私有成员的变量
// 继承在C#实现的中使用“A:B”表示A类继承B类
// 在JAVA实现中使用“A extends B”表示A类继承B类
// 当父类的默认构造函数被覆盖的时候,子类纯在非默认的构造函数,需要在子类构造函数中
// 使用super方法调用父类的构造函,super关键字也可以访问父类中的变量
// 转型:父类类型变量引用子类对象可以使用强制转换进行类型转换
// 子类类型变量引用子类对象可以隐式转换为父类,因为子类对象中拥有所有的父类对象


class Person {
    public Person(String name) {
        this.name = name;
    }
    public String name;
    
}

class Student extends Person {
    public Student(String name,String className) {
        super(name);
        this.className = className;
    }
    
    public String className;
} 

原文地址:https://www.cnblogs.com/-alvin/p/12957943.html