您的位置:首页 > 其它

抽象

2016-07-18 16:16 176 查看

抽象

Shape类表达的是一种概念,一种共同属性的抽象集合,我们并不希望任何Shape类的对象会被创建出来。那么,我们就应该把这个Shape类定义为抽象的。

我们用abstract关键字来定义抽象类。抽象类的作用仅仅是表达接口,而不是具体的实现细节。抽象类中可以存在抽象方法。抽象方法也是使用abstract关键字来修饰。

抽象的方法是不完全的,它只是一个方法签名而完全没有方法体。

如果一个类有了一个抽象的方法,这个类就必须声明为抽象类。

如果父类是抽象类,那么子类必须覆盖所有在父类中的抽象方法,否则子类也成为一个抽象类。

一个抽象类可以没有任何抽象方法,所有的方法都有方法体,但是整个类是抽象的。

设计这样的抽象类主要是为了防止制造它的对象出来。

抽象函数/抽象类

抽象函数:表达概念而无法实现具体代码的函数

抽象类:表达概念而无法构造出实体的类

带有abstract修饰符的函数

有抽象函数的类一定是抽象类

抽象类不能制作对象

但是可以定义变量

任何继承了抽象类的非抽象类的对象可以赋给这个变量

继承自抽象类的子类必须覆盖父类中的抽象函数

否则自己成为抽象类

两种抽象:

1、与具体相对,表达一种概念而非实体

2、与细节相对,表示在一定程度上忽略细节而着眼大局
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: