java为什么既有接口又有抽象类
5个回答
展开全部
最早的程序设计都是面向过程的,后续为了符合人们认识事物的方式,面向对象语言才出现,而接口、抽象类、类、对象都是对事物不同层次的抽象,接口是最顶层的抽象,抽象类次之,然后是类、对象,所谓的抽象其实是对对象“公共性质”的描述,接口则是对对象公共行为(方法)的抽象,抽象类则是对对象公共行为以及公共属性的抽象。
java语言在设计的时候为了突出对公共行为的抽象,设计了接口,然后硬性的规定了一些接口与抽象类的语法规范,例如:可以实现多个不同的接口,但是只能扩展一个抽象类,例如jdk的动态代理时必须使用接口,除了这些硬性的语法外,其他的地方在程序设计的时候你完全根据自己的意愿来选择是抽象成接口还是抽象类。
java语言在设计的时候为了突出对公共行为的抽象,设计了接口,然后硬性的规定了一些接口与抽象类的语法规范,例如:可以实现多个不同的接口,但是只能扩展一个抽象类,例如jdk的动态代理时必须使用接口,除了这些硬性的语法外,其他的地方在程序设计的时候你完全根据自己的意愿来选择是抽象成接口还是抽象类。
展开全部
接口和抽象类也是有区别的,他们的功能也是不同的,这是sun公司设计的,没有为什么,只是为了更好的实现功能,实现面向对象。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
1. 抽象类可以有成员变量
2. (重要)你可以实现多个接口, 但是只能继承一个抽象类
2. (重要)你可以实现多个接口, 但是只能继承一个抽象类
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
接口算是对抽象类的扩展。子类只能继承一个抽象类,但对接口没有限制。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这两个是有区别的,可以说接口是终极的抽象类,接口里面的方法是不能实现的,只能通过继承他实现,抽象类里面的方法是至少有一个没有实现就可以了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询