首页 > 编程知识 正文

抽象类可以实例化吗,方法重载和重写的区别

时间:2023-05-04 08:42:04 阅读:154946 作者:4171

文章目录1 .什么是抽象类? 1.1抽象系统的特性! 2 .什么是接口? 2.1接口特性! 3 .抽象类和接口的区别?

1 .什么是抽象类?

抽象类,顾名思义,就是类的抽象。 从面向对象的角度来考虑,世界上的万物都可以用类来定义。 (男是班,女是班,奔驰是班,宝马也是班)中,抽象班又是班的抽象。 举个例子说了男、女,它们有公共的一些属性和行动方法,不是有头、手、脚等吗? 我们不妨多抽象一下“人”这个类,让男、女继承这个抽象类。 这样,他们就有了人的共同特性,可以根据抽象类定义每个特殊的属性和方法。 例如,上厕所,男人进男厕所,女人进女厕所。

1.1抽象系统的特性! 包含无法实例化的声明但未实现的方法(也可以包括实现的方法)类如果存在只能继承一个抽象类的抽象方法,则必须将该类声明为抽象类的子类,方法是抽象类的抽象方法abstrr 公共文件夹; 公共硬件; //实现的方法sleep (() return '睡觉) ) /实现的方法eat ) )/return '吃饭)//未实现的方法abstract toilet ); }class Male extends Human{//子类声明为未实现的方法toilet (() return )上男厕所) }classfemaleextendshuman )//子类为未实现什么是/cannotcreateaninstanceofanabstractclass.constructor human () : Human 2.接口? 接口,它是对行为的抽象,具体如何行动需要子类来实现。 界面的含义是抽象的,不拘泥于细节,可以使同类事物在同一个高度上具有通用性和可替代性。

2.1接口特性! 一个包含不能实例化的声明但未实现的方法类可以继承多个接口的子类,并且必须实现该声明的未实现方法的所有成员都是缺省公共的,因此该接口例如,奔驰和宝马有飞行和通过水路的功能。 其他车上没有! 那么,可以通过界面分别实现!

接口平面{ dbl () :字符串; }接口water way { water way () :字符串; }class Baoma implements plane, } waterWay(DBL ) :string(Return )宝马汽车实现了飞行技术) water way (3360 string ) Return )宝马汽车实现了水路技术) //误报` dbl' only refers to a type,but is being used as a value here ` `在这里飞行和走水路的行为不是所有车都共有的特性(只有这两辆车有这个功能,其他车有这个功能)

3 .抽象类和接口的区别? 抽象类是类(事物)的抽象,抽象类用于捕捉子类的共同特性。 接口是行为的抽象接口,可以实现很多,但抽象类只有单个继承接口没有继承的具体特征,只约定了可以调用的方法,抽象类有很多定义介于一系列密切相关的类之间。

总结:抽象类是对类本质的抽象,表示is a的关系。 例如male is a Human。 抽象类包含和实现子类的公共特性,抽象出子类中有差别的特性,交给子类来实现。

界面是行为的抽象,表达了like a的关系。 例如,Baoma like a plane (它能飞以便有飞的功能)本质上是is a Car。 接口的中心是定义实现类可以做什么的动作,对于实现类的主体是谁,如何实现,接口并不关心。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。