
java API 文档中的接口方法和抽象方法,有什么区别?
展开全部
对于面向对象编程来说,抽象是它的一大特征之一。可以通过两种形式来体现OOP的抽象:接口和抽象类。这两者有太多相似的地方,又有太多不同的地方。很多人在初学的时候会以为它们可以随意互换使用,但是实际则不然。今天我们就一起来学习一下Java中的接口和抽象类。 抽象方法是一种特殊的方法:它只有声明,而没有具体的实现。抽象方法的声明格式为: abstract void fun(); 抽象方法必须用abstract关键字进行修饰。如果一个类含有抽象方法,则称这个类为抽象类,抽象类必须在类前用abstract关键字修饰。因为抽象类中含有无具体实现的方法,所以不能用抽象类创建对象。抽象类就是为了继承而存在的,如果你定义了一个抽象类,却不去继承它,那么等于白白创建了这个抽象类,因为你不能用它来做任何事情。对于一个父类,如果它的某个方法在父类中实现出来没有任何意义,必须根据子类的实际需求来进行不同的实现,那么就可以将这个方法声明为abstract方法,此时这个类也就成为abstract类了。在软件工程中,接口泛指供别人调用的方法或者函数。从这里,我们可以体会到Java语言设计者的初衷,它是对行为的抽象。接口中可以含有变量和方法。但是要注意,接口中的变量会被隐式地指定为public static final变量(并且只能是public static final变量,用private修饰会报编译错误),而方法会被隐式地指定为public abstract方法且只能是public abstract方法(用其他关键字,比如private、protected、static、 final等修饰会报编译错误),并且接口中所有的方法不能有具体的实现,也就是说,接口中的方法必须都是抽象方法。从这里可以隐约看出接口和抽象类的区别,接口是一种极度抽象的类型,它比抽象类更加“抽象”,并且一般情况下不在接口中定义变量。
展开全部
api中就是帮你做了一个区分。
api中的一个类,可能自己就是一个抽象类,拥有抽象方法。同时又实现一个(or 多个)接口,所以文档就会做对应的区分。
api中的一个类,可能自己就是一个抽象类,拥有抽象方法。同时又实现一个(or 多个)接口,所以文档就会做对应的区分。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2021-06-07
展开全部
1、接口强调的是规范。抽象方法强调的是方法共性,特性交给子类去实现。
2、接口方法必须是公开的,抽象方法可以是default、protected、public,具体看实现类和抽象类不同包,则可以是protected、public
2、接口方法必须是公开的,抽象方法可以是default、protected、public,具体看实现类和抽象类不同包,则可以是protected、public
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
它们的区别是:
接口中的方法除了可以是抽象方法,还可以是静态方法、默认方法和私有方法。
接口体现的是一种规范,接口定义的方法表明了其实现类必须对外提供哪些服务/功能。而抽象类体现的是一种通用的模板式设计,它的抽象方法定义了子类们的共同功能。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询