抽象类是用来描述一种类型应该具备的基本特征与功能,如:(抽象方法指只有功能声明,没有功能主体实现的方法) 具体如何去完成这些行为由子类通过方法重写来完成
比如,男人,女人,这两个类(如果是类的话……),他们的抽象类就是是人。然而到底是男人还是女人,就要看他的实现子类说他是男人还是女人了。
抽象类被abstract修饰,什么是抽象类呢 ?就是不能自身直接具体的去实例化,只能通过他的子类去实例化对象的类,
具有抽象方法的类一定为抽象类。
抽象类无法直接创建对象,只能被子类继承后,创建子类对象。
子类需要继承抽象父类并完成最终的方法实现细节(即重写方法,完成方法体)。而此时,方法重写不再是加强父类方法功能,而是父类没有具体实现,子类完成了具体实现,我们将这种方法重写也叫做实现方法。
继承的子类如果不是抽象类,那么子类就必须重写父类的所有抽象方法,如果不能重写父类所有的抽象方法,那么子类本身也必须是抽象类,
在抽象类中抽象方法只有方法的声明,没有方法体。
抽象类也可以有构造器,虽然它本身不能实例化对象,但是继承他的子类实例化的时候,需要了解父类所有属性的初始化过程,那么就必须有构造器。