目录
1.抽象类
1.1抽象类概念
抽象类是面向对象编程中的一个概念,它是一种不能被实例化的类。抽象类用来定义一些共享的特性和行为,并且可以提供一些具体的方法实现。抽象类通常用作其他类的父类或接口的实现类。
在Java中,一个类如果被 abstract 修饰称为抽象类,抽象类中被 abstract 修饰的方法称为抽象方法,抽象方法不用给出具体的实现体。
// 抽象类:被abstract修饰的类
public abstract class Shape {
// 抽象方法:被abstract修饰的方法,没有方法体
abstract public void draw();
abstract void calcArea();
// 抽象类也是类,也可以增加普通方法和属性
public double getArea(){
return area;
}
protected double area; // 面积
}
1.2抽象类特点
抽象类具有以下特点:
抽象类不能被实例化:抽象类不能直接创建对象,只能通过它的子类来实例化。
抽象方法:抽象类中可以包含抽象方法,它们没有具体的实现,只有方法签名。子类必须实现抽象方法,否则子类也必须声明为抽象类。
具体方法:抽象类中可以包含具体的方法,这些方法有具体的实现。
字段和常量:抽象类可以包含字段和常量,这些字段和常量可以在子类中使用。
继承和多态:其他类可以继承抽象类,并继承其特性和行为。通过抽象类,可以实现多态,即通过父类类型引用子类对象。
// 矩形类 public class Rect extends Shape { private double length; private double width; Rect(doubl