- Java子类可以从父类继承哪些内容
Java子类可以从父类继承以下内容:
属性(Fields/Variables):
public:子类可以继承父类所有的public修饰的属性。
protected:子类可以继承父类所有的protected修饰的属性,无论子类和父类是否在同一个包内。
默认(无修饰符):如果子类和父类位于同一个包内,子类可以继承父类中默认访问修饰符(即没有明确修饰符)的属性。
private:子类不能直接继承父类中private修饰的属性,因为它们在类外部(包括子类)是不可见的。
方法(Methods):
同样遵循上述访问修饰符的规则,子类可以继承public和protected方法,以及同一包内的默认访问权限的方法。private方法不可继承,但可以通过继承的公共或受保护的接口(如果存在)来间接访问其功能。
构造方法(Constructors):
构造方法本身不能被继承,但子类的构造方法可以通过super()关键字调用父类的构造方法来初始化从父类继承的成员变量。
静态成员(Static Members):
静态成员(包括字段和方法)按其访问权限被继承,但它们不是对象的一部分,而是类的一部分。子类可以访问父类的静态成员(基于访问权限),但不视为继承的一部分,因为静态成员不依赖于对象实例。
继承的可见性:
继承的成员在子类中的可见性保持不变,除非子类通过使用更严格的访问修饰符来重新声明它们(这实际上不是继承的一部分,而是覆盖或隐藏)。
异常处理:
子类覆盖父类的方法时,抛出的异常类型不能比父类方法声明的更宽泛,但可以抛出更具体的异常或不抛出异常。
如果大家需要视频版本的讲解,欢迎关注我的B站: