第1关:学习-java继承和多态之子类对象特点
时间: 2023-04-24 18:03:49 浏览: 254
子类对象特点包括:
1. 子类对象可以继承父类的属性和方法,也可以添加自己的属性和方法。
2. 子类对象可以调用父类的公共方法,也可以重写父类的方法。
3. 子类对象可以通过super关键字调用父类的构造方法,也可以通过this关键字调用本类的构造方法。
4. 子类对象可以向上转型为父类对象,也可以向下转型为子类对象。
5. 子类对象可以通过多态的方式调用父类和子类的方法,实现代码的灵活性和扩展性。
相关问题
第1关:学习-Java继承和多态之子类继承性
子类继承性是指子类可以继承父类中的属性和方法。在Java中,使用关键字"extends"来实现子类对父类的继承。子类可以继承父类中的public和protected访问权限的成员变量和方法,但是不能继承private和友好访问权限的成员变量和方法。此外,子类还可以通过super关键字来调用父类中的方法和构造函数。在继承中,子类可以重写父类中的方法,这被称为方法覆盖。同时,子类也可以隐藏父类中的成员变量,这被称为变量隐藏。继承的意义在于可以减少代码的重复,提高代码的可维护性和可扩展性。
第1关:学习-Java继承和多态之super关键字
在Java中,`super`关键字是一个重要的组成部分,它用于访问父类(超类)的成员。第一关主要是理解如何在子类中利用`super`:
1. **构造函数中的super()**:当创建子类实例时,可以使用`super()`调用父类的构造函数,帮助初始化父类的属性。这是子类构造函数的第一行,确保了父类的初始化。
```java
public class ChildClass extends ParentClass {
public ChildClass() {
super();
// 子类自定义代码
}
}
```
2. **访问父类成员**:可以直接使用`super`关键字来引用父类的字段或方法,而不是通过`this`(指代当前对象)。例如,如果父类有同名的方法:
```java
class Parent {
public void someMethod() {
System.out.println("Parent method");
}
}
class Child extends Parent {
@Override
public void someMethod() {
super.someMethod(); // 调用父类方法
System.out.println("Child method");
}
}
```
3. **避免覆盖父类默认方法**:在子类中,如果想保留并直接调用父类的某个非覆盖方法,可以在该方法前加上`super.`,如`super.defaultMethod()`。
阅读全文