java如何继承父类
继承的基本语法
在Java中,使用extends关键字实现类继承。子类会继承父类的非私有属性和方法。
class ParentClass {
// 父类成员
}
class ChildClass extends ParentClass {
// 子类成员
}
方法重写
子类可以重写父类的方法,使用@Override注解表明这是重写方法。重写方法必须与被重写方法具有相同的方法签名。

class Parent {
void display() {
System.out.println("Parent's display");
}
}
class Child extends Parent {
@Override
void display() {
System.out.println("Child's display");
}
}
super关键字
使用super可以访问父类的成员变量和方法,包括调用父类的构造方法。
class Parent {
String message = "Parent message";
}
class Child extends Parent {
String message = "Child message";
void printMessages() {
System.out.println(super.message); // 访问父类成员
System.out.println(this.message); // 访问子类成员
}
}
构造方法继承
子类构造方法默认会调用父类的无参构造方法。如果父类没有无参构造方法,必须使用super显式调用父类的有参构造方法。

class Parent {
Parent(int value) {
System.out.println("Parent constructor: " + value);
}
}
class Child extends Parent {
Child() {
super(10); // 必须显式调用父类构造方法
System.out.println("Child constructor");
}
}
继承的限制
Java不支持多重继承,一个类只能直接继承一个父类。所有类都隐式继承Object类,它是Java类继承体系的根类。
class MyClass {
// 隐式继承Object类
}
访问修饰符影响
父类的private成员不能被子类直接访问,protected成员可以被子类访问(即使在不同包中),public成员在任何地方都可访问。
class Parent {
private int privateVar;
protected int protectedVar;
public int publicVar;
}
class Child extends Parent {
void accessMembers() {
// privateVar = 1; // 编译错误
protectedVar = 2; // 允许访问
publicVar = 3; // 允许访问
}
}






