1楼:匿名用户
普通类可以继承普通类,也可以继承抽象类,但是不能继承接口,只能实现接口。
继承抽象类的时候要对抽象类里面的抽象方法进行实现。
抽象类也可以继承自接口。
2楼:匿名用户
抽象类与接口紧密相关,它们不能示例化,并且常常部分实现或根本不实现。抽象类和接口之间的一个主要差别是:类可以实现无限个接口,但仅能从一个抽象(或任何其他类型)类继承。
从抽象类派生的类仍可实现接口。
3楼:910404我太要强
可以 只可以继承一个
4楼:匿名用户
可以 但是你要覆写抽象类方法
java中抽象类可以继承实体类吗
5楼:智雅的春天
抽象类可以继承实体类,因为抽象类中不仅可以有抽象方法,也可以有非抽象方法,抽象类继承了实体类则即包括自己的抽象方法也包括了继承来的非抽象方法
6楼:育知同创教育
1、抽象类只是一个特殊的类,但是也具备类的特性。
2、如果这个类中有抽象方法,那么这个类必须定义为抽象类。
3、如果这个抽象类继承了别的抽象类,那么可以不覆盖抽象方法。
因为:这个抽象类也是抽象的,没办法实现方法体。
7楼:偷西瓜de狼
可以继承,但是和实体类的继承一样,也要求父类拥有子类可访问到的构造器,这个构造器必须是公共的 ,可以供抽象类调用
8楼:匿名用户
一个类只能继承一个抽象类,而一个类却可以实现多个接口。
9楼:匿名用户
可以,可以这么理解,抽象类并不是所有的方法都是抽象的
java中继承抽象类和继承普通类有什么区别?
10楼:黄四洲
抽象类的作用是普通类无法替代的,抽象类的作用主要是提供一种模版,比如我现在要写一个person类.首先要是普通类我可能会这么写:public class person}这里person类有名字,年龄属性,还有一个介绍职业的方法,假如现在要写一个学生类,学生也是人要继承person我们写class s***ents},同理有一个教师类public class teachers},现在再来看下person.
里面的dojob方法有意义吗?i havea job这句话一点用处没有,所以可以将dojob写成dojob(),让具体类型的人具体实现,所以抽象类就起到了近一步抽象的作用,些person类的时候我根本不需关心职业的问题我person只提供一个抽象的模板
11楼:匿名用户
首先我们都知道 抽象类是一种特殊的接口,那就要知道java为什么定义接口,其实说白了,就是为了定义一种规范,让大家都必须去实现这个接口。而抽象类呢,我里面可以有抽象方法,也可以有普通方法,就是说抽象类里的方法可以
被子类部分实现,只用实现抽象的方法。而你继承普通类,可以完全不用去实现父类的任何一个方法。
总的来说就是:接口必须全部实现,抽象类只实现抽象方法,继承类可以不实现。
12楼:大时代暑
抽象类体现的的就是一种模板模式的设计。抽象类是从多个具体类中抽象出来的父类。从多个具有相同特征的类中抽象出一个抽象类,以这个抽象类作为其子类的模板,从而避免了子类设计的随意性。
如果编写一个抽象父类,父类提供了多个子类的通用方法,并把一个或多个抽象方法留给其子类实现,这就是一种模板模式。模板模式也是最常见,最简单的设计模式之一。
这就是抽象类的作用,明白了这个,我想**就不用写了吧。
13楼:匿名用户
这个没**能解释的。
这个问题还可以扩展为,为什么要有private、public之分呢……
这些概念的提出是为了帮助你建立良好的编程思想和规范,便于开发和后续维护。
14楼:匿名用户
抽象类与普通类的最重要的区别是从面向对象的角度来出发进行解释的,抽象类描述的是非具体的东西,比如说形状,这就是非具体的,形状分为三角形,正方形。圆形等等,普通类就更具体了,三角形就就可以作为一个普通类来对待的。
如果单从语法上来考虑东西,很多问题是想不明白的,建议童鞋多从java编程的核心思想上来考虑,而不只是单纯的考虑一些语法解释上的东西!
15楼:寻找卡恩
比如说动物这个抽象类,它可以有吃或者运动的方法,但是不能有方法体,因为动物有好多种,不知道它吃什么怎么运动,派生出子类bird就可以写方法体了,它吃虫子,飞行。就这样。。。
java中,抽象类可以继承实体类,实体类可以继承抽象类吗,都可以的吗?
16楼:无敌菌
可以继承,实体类继承抽象类后要实现抽象类中的抽象方法。
17楼:匿名用户
这个是都可以的,类的继承和是否抽象无关
18楼:杨冬
1. 实体类可以继承抽象类,并需要实现抽象类的所有方法,抽象类中非抽象方法可重写,也可不重写。
2. 抽象类也可继承实体类方法
19楼:fs小小罗
有两种 一个叫extends 一个叫implements ,这两种的区别,自己可以查下
java中继承抽象类和继承普通类有什么区别? abstract class和inte***ce有什么区别
20楼:手机用户
首先我们都知道 抽象类是一种特殊的接口,那就要知道java为什么定义接口,其实说白了,就是为了定义一种规范,让大家都必须去实现这个接口。而抽象类呢,我里面可以有抽象方法,也可以有普通方法,就是说抽象类里的方法可以 被子类部分实现,只用实现抽象的方法。而你继承普通类,可以完全不用去实现父类的任何一个方法。
总的来说就是:接口必须全部实现,抽象类只实现抽象方法,继承类可以不实现。 抽象类不能被实例化,只能被继承象类的作用是普通类无法替代的,抽象类的作用主要是提供一种模版,比如我现在要写一个person类.
首先要是普通类我可能会这么写:public class person}这里person类有名字,年龄属性,还有一个介绍职业的方法,假如现在要写一个学生类,学生也是人要继承person我们写class s***ents},同理有一个教师类public class teachers},现在再来看下person.里面的dojob方法有意义吗?
i havea job这句话一点用处没有,所以可以将dojob写成dojob(),让具体类型的人具体实现,所以抽象类就起到extends 是继承某个类 继承之后可以使用父类的方法 也可以重写父类的方法 implements 是实现多个接口 接口的方法一般为空的 必须重写才能使用 abstract class和inte***ce有什么区别 ? 前者是抽象类,后者是接口。 抽象类和接口都可以被继承,不同的是,接口内的方法不能实现,需要继承的类来具体实现其方法,而抽象类中的方法可以被具体实现,并且继承的类可以重写其方法。
一个类可以继承一个抽象类,但是可以继承多个接口。通常,接口被运用于实现比较常用的功能,便于日后维护或者添加删除方法,而抽象类更倾向于充当公共类的角色。不适于在日后重新对里面的**进行修改。
回答者: z屁小妞 | ** | 2009-3-21 22:44
class 是普通类 abstract 是抽象类 包含纯虚函数(c++里)的类 inte***ce 是接口 让普通类可以继承他派生出有一定相同点的不同类 范围作用一般是: inte***ce > abstract abstract > class 比如: 你创建一个 图形 的接口 inte***ce 然后创建了2个abstract 抽象类, 圆形和三角型 你由于需要,实现了圆形的普通类:
正圆 和椭圆 抽象类 接口不能创建对象 只有让派生类继承他们来创建对象 回答者: pujia12345 | 八级 | 2009-3-21 22:45
关于抽象类和接口的区别网上有一大堆,能了解很多,下面是我曾总结的关键地方,希望对你有帮助 接口缺点:如果向一个java接口加入一个新的方法时,所有实现这个接口的类都得编写具体的实现。 接口优点:
一个类可以实现多个接口,接口可以让这个类不仅具有主类型的行为,而且具有其他的次要行为,比如 hashmap主要类型是map,而cloneable接口使它具有一个次要类型,这个类型说明它可以安全的克隆. 抽象类的缺点:一个类只能由一个超类继承,所以抽象类作为类型定义工具的效能大打折扣。
抽象类的优点:具体类可从抽象类自动得到这些方法的缺省实现。 抽象类与接口的区别-- 1、抽象类可以包含部分方法的实现,这是抽象类优于接口的一个主要地方。
2、由于java的单继承,每个类只能从一个抽象类继承,但是每个类可以实现多个接口,使用接口还可以实现mixin混合类型的类。接口可以继承多个接口,即接口间可以多重继承。 3、将类抽取出通用部分作为接口容易,要作为抽象类则不太方便,因为这个类有可能已经继承自另一个类。
4、可以将接口和抽象类一起使用。在集合框架体系中,顶层接口collection定义了一些方法,同时又提供了几个抽象类 abstractcollection、abstractlist、abstractmap实现了一些方法,这样具体的集合实现类可以选择从抽象类中继承或直接实现接口。 补充:
1、包含一个或多个抽象方法的类本身必须被声明为抽象的; 2、除了抽象方法外,抽象类还可以包含具体数据和具体方法; 如: abstract class person public abstract string getdescription();//注意:没有{} public string getname() } 回答者:
rokily | 四级 | 2009-3-21 22:48
前者是抽象类,后者是接口.抽象类可以被继承(extends),不可有实例,继成的类可以重写其方法,抽象类中的抽象方法必须重写。一个类可以继承一个抽象类,但是可以继承多个接口。
通常,接口被运用于实现比较常用的功能,便于日后维护或者添加删除方法,而抽象类更倾向于充当公共类的角色。接口类的方法只写个函数申明,不实现。
java继承抽象类与普通类有什么区别?
21楼:娜杰真爱一生
抽象类:
1、抽象类中可以有普通方法,如果想让方法子类必须实现,就弄成抽象方法。
2、如果抽象类中有抽象方法,那么这个类必须定义为抽象类。
3、抽象类不能被new。
普通类:
1、普通类中不能有抽象方法。
2、如果一个普通类实现了一个抽象接口或者抽象类,那么意味着必须重写抽象方法。
一、继承(extends)
继承是对现实生活中的"分类"概念的一种模拟。
狮子拥有动物的一切基本特性,但同时又拥有自己的独特的特性,这就是"继承"关系的重要特性:通常简称为"is_a"关系,uml类图可以这么表示:
继承的语法
class 子类名 extends 父类名
注意:父类(parent class)和超类(super class):通常指直接上级;
基类(base class):通常指包括直接上级在内的"上级的上级";
例如:子类自动拥有父类声明为public和protected的成员,这就是继承特性的体现之一。
继承条件下类的访问权限:
public:外界可自由访问
private:外界不可访问
protected:同一包中的子类都可以访问,另一包中的子类(派生于同一个父类)也可以访问
default:如果不指明任何权限,则默认同一包中的类可以访问
java中抽象类和接口的区别,java抽象类和接口的区别?
1楼 匿名用户 java中对的抽象类和接口对的区别 抽象类 抽象类内允许有普通变量和普通方法 抽象类必须有abstract关键字 抽象类内可以没有抽象方法,但不能实例化 抽象类内有抽象方法的一定是抽象类 抽象类不能被实例化,但是有构造方法 派生类可以扩展 。 接口 接口只声明,没有方法体,如 pub...
php中抽象类和接口的区别,java中抽象类和接口的区别?
1楼 越勒 区别 1 对接口的使用是通过关键字implements。对抽象类的使用是通过关键字extends。 当然接口也可以通过关键字extends继承。 2 接口中不可以声明成员变量 包括类静态变量 ,但是可以声明类常量。抽象类中可以声明各种类型成员变量,实现数 java中抽象类和接口的区别? ...
java中子类和子类型的区别,Java的类的继承中,子类与非子类是什么?有什么区别?
1楼 宝贝我想了 子类化 subclass 和 子类型化 subtype 的区别 原创,未经作者许可不得 subtype具有更加严格的要求,就是父类的任何子类都可以在运行时可无缝的代替父类的工作,子类的接口具有更加相比父类更加强的前置条件,父类的接口在子类中得到继承,并且不得在子类中修改父类方法的签...