-----------------------
android培训、
java培训、期待与您交流! -----------------------
继承
1,提高代码复用性。
2,让类与类之间产生了关系,有了这个关系,才有了多态的特性。
注意:千万不要为了获取其他类的功能,简化代码而继承。
必须是类与类之间有所属关系才可以继承。
java语音中:java只支持单继承,不支持多继承。
因为多继承容易带来安全隐患:当多个父类中定义了相同功能,当功能内容不同时,不确定要运行哪一个。
但是java保留了这种机制。并且用另一种体现形式来完成表示:多实现。
java支持多层继承。也就是一个继承体系。
如何使用一个继承体系中的功能呢?
想要使用体系,先查阅体系父类的描述,因为父类中定义的是该体系的共性功能,
通过了解共性功能,就可以知道该体系的基本功能。
那么这个体系已经可以基本使用了。
那么在具体调用时,要创建最子类的对象。为什么呢??
一是因为有可能父类不能创建对象
二是创建子类对象可以使用更多的功能,包括基本的,也包括特有的。
简单一句话:查阅父类功能,创建子类对象使用功能。
扩展知识
聚集:has a(谁里边有谁)
聚合;例如---球员是球队中的一个。(球员可以换,球队还在。)
组合;例如---手是人的一部分,心脏是人的一部分。(缺一不可,要不然人就挂了。)
——————————————————————
抽象类
当多个类中出现了相同功能,但是功能主题不同。
这时可以进行向上抽取,这时,只抽取功能定义,而不抽取功能主体。
抽象:其实就是看不懂……
抽象类的特点:
1,抽象方法一定是定义在抽象类中。
2,抽象方法和抽象类都必须被abstract关键字修饰。
3,抽象类不可以用new创建对象,因为抽象方法没意义。
4,抽象类中的抽象方法要被使用,必须由子类复写起所有的抽象方法后,建立子类对象调用。
如果子类只覆盖了部分抽象方法,那么该子类还是一个抽象类。
抽象类和一般类没有太大的不同。
该如何描述事物,就如何描述事物,只不过,该事物出现了一些看不懂的东西。
这些不确定的部分,也是该事物的功能,需要明确出现,但是无法定义主体。
通过抽象方法来表示。
抽象类比一般类多了个抽象函数,就是在类中定义抽象方法。
抽象类不可以实例化。
特殊:
抽象类中可以不定义抽象方法,这样做仅仅是不让该类建立对象。
————————————————————————
接口:初期理解,可以认为是一个特殊的抽象类
当抽象类中的方法都是抽象的,那么该类可以通过接口的形式来表示。
class用于定义类
interface用于定义接口。
接口定义时,格式特点;
1,接口中常见定义:常量,抽象方法。
2,接口中的成员都有固定修饰符。
常量:public static final
方法:public abstract
记住:接口中的成员都是public的。
接口:是不可以创建对象的,因为有抽象方法。
需要被子类实现,子类对接口中的抽象方法全都覆盖后,子类才可以实例化。
否则子类是一个抽象类。
接口可以被类实现多个,也是对多继承不支持的转换形式。
继承
1,提高代码复用性。
2,让类与类之间产生了关系,有了这个关系,才有了多态的特性。
注意:千万不要为了获取其他类的功能,简化代码而继承。
必须是类与类之间有所属关系才可以继承。
java语音中:java只支持单继承,不支持多继承。
因为多继承容易带来安全隐患:当多个父类中定义了相同功能,当功能内容不同时,不确定要运行哪一个。
但是java保留了这种机制。并且用另一种体现形式来完成表示:多实现。
java支持多层继承。也就是一个继承体系。
如何使用一个继承体系中的功能呢?
想要使用体系,先查阅体系父类的描述,因为父类中定义的是该体系的共性功能,
通过了解共性功能,就可以知道该体系的基本功能。
那么这个体系已经可以基本使用了。
那么在具体调用时,要创建最子类的对象。为什么呢??
一是因为有可能父类不能创建对象
二是创建子类对象可以使用更多的功能,包括基本的,也包括特有的。
简单一句话:查阅父类功能,创建子类对象使用功能。
扩展知识
聚集:has a(谁里边有谁)
聚合;例如---球员是球队中的一个。(球员可以换,球队还在。)
组合;例如---手是人的一部分,心脏是人的一部分。(缺一不可,要不然人就挂了。)
——————————————————————
抽象类
当多个类中出现了相同功能,但是功能主题不同。
这时可以进行向上抽取,这时,只抽取功能定义,而不抽取功能主体。
抽象:其实就是看不懂……
抽象类的特点:
1,抽象方法一定是定义在抽象类中。
2,抽象方法和抽象类都必须被abstract关键字修饰。
3,抽象类不可以用new创建对象,因为抽象方法没意义。
4,抽象类中的抽象方法要被使用,必须由子类复写起所有的抽象方法后,建立子类对象调用。
如果子类只覆盖了部分抽象方法,那么该子类还是一个抽象类。
抽象类和一般类没有太大的不同。
该如何描述事物,就如何描述事物,只不过,该事物出现了一些看不懂的东西。
这些不确定的部分,也是该事物的功能,需要明确出现,但是无法定义主体。
通过抽象方法来表示。
抽象类比一般类多了个抽象函数,就是在类中定义抽象方法。
抽象类不可以实例化。
特殊:
抽象类中可以不定义抽象方法,这样做仅仅是不让该类建立对象。
————————————————————————
接口:初期理解,可以认为是一个特殊的抽象类
当抽象类中的方法都是抽象的,那么该类可以通过接口的形式来表示。
class用于定义类
interface用于定义接口。
接口定义时,格式特点;
1,接口中常见定义:常量,抽象方法。
2,接口中的成员都有固定修饰符。
常量:public static final
方法:public abstract
记住:接口中的成员都是public的。
接口:是不可以创建对象的,因为有抽象方法。
需要被子类实现,子类对接口中的抽象方法全都覆盖后,子类才可以实例化。
否则子类是一个抽象类。
接口可以被类实现多个,也是对多继承不支持的转换形式。
————————————————————————————
---------------------- android培训、java培训、期待与您交流! ------------------------
本文详细解读Java中的继承机制及其注意事项,包括单继承、多实现、多层继承的概念和应用。同时,深入探讨抽象类的特点、抽象方法的定义与使用,以及抽象类与一般类的区别。此外,介绍接口的定义、特点以及与抽象类的关系,阐述如何通过接口实现多继承转换。

550

被折叠的 条评论
为什么被折叠?



