Java为什么要设计抽象类
Java为什么要设计抽象类
为什么要设计抽象类,明明有时候一个普通的类就可以完成所需功能,为什么还要添上abstract设计成抽象类,难道只是为了强制子类重写抽象方法吗?
看看抽象类的定义:在面向对象的概念中,所有的对象都是通过类来描绘的,但是反过来,并不是所有的类都是用来描绘对象的,如果一个类中没有包含足够的信息来描绘一个具体的对象,这样的类就是抽象类。[原文链接]
所以无法当这个类无法完整描述一个事物的,就应该定义成抽象类吗?或者也同时为了强制重写子类,可以防止忘了重写?
抽象类的价值更多作用是在于设计,是设计者设计好后,让子类继承并实现。