Java SE基础知识:继承、抽象与多态

需积分: 6 0 下载量 114 浏览量 更新于2024-07-15 收藏 34KB DOCX 举报
"该文档是关于Java SE基础知识的总结,涵盖了继承、抽象类与接口、多态、权限修饰符、代码块、Object类、Date类、DateFormat类、Calendar类、Math类、System类、BigDecimal类、Arrays类以及包装类的相关知识。此外,还涉及到基本类型与字符串之间的转换、String类的构造和方法、Collection集合以及集合和数组的区别等核心概念。" 在Java编程语言中,继承是面向对象编程的一个关键特性,允许一个类(子类)继承另一个类(父类)的属性和方法。子类通过`public class 子类 extends 父类 {}`的语法来实现继承,这样子类就自动拥有了父类所有非私有的成员变量和成员方法。继承的一个主要特点是,子类可以有自己的特性和功能,同时保留了父类的特性,提高了代码的复用性。 继承的调用特点: 1. 子类有相应的方法或变量时,优先使用子类的。 2. 子类没有而父类有的,会使用父类的。 3. 如果子类和父类都没有,编译时会报错。 方法重写(Override)是指在子类中定义与父类相同的方法(返回值类型、方法名、参数列表和修饰符至少相同),用于扩展或改变父类的功能。重写有助于实现多态,即同一个方法在不同的子类中表现出不同的行为。 `this`关键字在Java中代表当前对象,它能帮助解决以下问题: 1. `this.变量名`:表示当前类的成员变量。 2. `this.方法名称()`:调用当前类的成员方法。 3. `this(参数)`:调用当前类的其他构造方法。 `super`关键字则用于引用父类的成员,解决如下问题: 1. `super.变量名`:代表父类的成员变量。 2. `super.方法名称()`:调用父类的成员方法。 3. `super()` 或 `super(参数)`:调用父类的构造方法。 抽象方法是没有方法体的方法,由`abstract`关键字修饰。例如: ```java public abstract void aaa(); public abstract int bbb(); public abstract int ccc(String s); ``` 抽象类可以包含抽象方法,并用`public abstract class 类名 {}`声明。如果一个类包含抽象方法,那么该类必须声明为抽象类。子类继承抽象类时,必须实现父类的所有抽象方法,除非子类也是抽象类。 `final`关键字有三种用途: 1. 当用于类时,表示该类不能被继承,称为最终类。 2. 当用于方法时,表明方法不能被重写。 3. 当用于变量时,变量一旦赋值就不能再改变,相当于常量。 继承使得子类具备了父类的特性,提高了代码的可扩展性和复用性。当子类需要表示它是一个更通用类型(如“isa”关系)的一部分时,可以考虑使用继承。例如,`Teacher`类可以继承`Employee`类,因为教师是员工的一种。通过这种方式,`Teacher`类不仅具有`Employee`类的基本属性,还可以添加特有的属性和方法,以满足特定的业务需求。