比如有个类A,把它设置成abstract是为了不让它实例化,只能表示一个抽象的或者不具体的无法实例化的概念,但是就算不在这个A的前面加abstract照样可以实现很多类的继承,那我真的不太理解设置抽象类的意义到底在哪里,请各位不吝赐教!
抽象类定义一些有一定关系的类的共同行为,比如一个几何图形类,几何图形包括多种图形,如,正方形,圆形,矩形,三角形等,而每种图形用有各自的面积周长计算公式,所以可以在几何图形类里抽象这些公共方法,而不提供真正方法(也没法提供,所以只能是抽象了)。之后各种图形都可以进行面积周长的比较,总不能重载很多个比较函数,所以这时就可以定义一个比较函数,参数类型是父类,这样这些图形就都可以进行比较了。而在比较函数里,由于多态,对象会调用自己独特的面积周长计算函数。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。