java基础系列(九) 接口和抽象类
创始人
2024-05-30 21:37:12
0

一. 接口

简单的说,接口就是一种被规范的标准,只要符合这个标准都可以通用,接口的表现

在于对行为的抽象. 

1.1 创建接口的格式

格式1:  public interface 接口名

格式2:  interface 接口名

1.2  在JDK1.8之后, 在接口中可以定义实现的方法体是java8的一大特性,可以定义多个静态或者默认的方法, 下面的代码注释中说明了使用方法.

接口代码如下:

public interface Action {// 接口中都是抽象方法和常量,不可能有非抽象方法,常量必须被赋值。//接口中的方法默认是 public abstractpublic abstract void eat();//常量默认是 public static finalpublic static final int age = 20;//Java8中接口中引入默认方法和静态方法,以此来减少抽象类和接口之间的差异//静态方法public static void method() {/*** 1、定义一个静态的带有方法体的方法* 2、接口不能创建对象,调用静态方法不需要对象* 3、接口名直接调用:  Action.method();*/System.out.println("接口中静态方法");}//默认方法用default来修饰/*不同于静态方法,默认方法是一个非静态方法对于非静态方法,只能通过对象进行调用接口是不能直接new, 因此我们需要子类来实现接口** */default void methodDefault(){System.out.println("default method in interface");}}

验证方法:

public class TestInterface implements Action{@Overridepublic void eat() {System.out.println("实现接口中的eat方法");}public static void main(String[] args) {Action action = new TestInterface();//调用接口中defaut方法action.methodDefault();//调用接口中的static方法 直接用 接口.方法();Action.method();}
}

打印如下:


default method in interface接口中静态方法

1.3 接口有什么特点?

接口中声明全是public static final修饰的常量
接口中所有方法都是抽象方法
接口是没有构造方法的
接口也不能直接实例化
接口可以多继承

二. 抽象类和接口对比

抽象类是用来捕捉子类的通用特性的。接口是抽象方法的集合。
从设计层面来说,抽象类是对类的抽象,是一种模板设计,接口是行为的抽象,是一种行为的规范。

相同点:
接口和抽象类都不能实例化
都位于继承的顶端,用于被其他实现或继承
都包含抽象方法,其子类都必须覆写这些抽象方法

不同点:


抽象类接口

抽象类使用abstract关键字声明接口使用interface关键字声明

子类使用extends关键字来继承抽象类。如果子类不是抽象类的话,它需要提供抽象类中所有声明的方法的实现子类使用implements关键字来实现接口。它需要提供接口中所有声明的方法的实现


抽象类可以有构造器接口不能有构造器
访



抽象类中的方法可以是任意访问修饰符

接口方法默认修饰符是public. 并且

不允许定义为 private 或者protected

一个类最多只能继承一个抽象类一个类可以实现多个接口

抽象类的字段声明可以是任意的接口的字段默认都是 static 和 final

备注:Java8中接口中引入默认方法和静态方法,以此来减少抽象类和接口之间 的差异。
现在,我们可以为接口提供默认实现的方法了,并且不用强制子类来实现它。

接口和抽象类各有优缺点,在接口和抽象类的选择上,必须遵守这样一个原则:


1 . 行为模型应该总是通过接口而不是抽象类定义,所以通常是优先选用接口,尽量 少用抽象类。
2.   选择抽象类的时候通常是如下情况:需要定义子类的行为,又要为子类提供通用 的功能。

相关内容

热门资讯

重磅!一线城市房地产调控全面松... 一线城市房地产调控全面松绑,释放购房新信号2025 年,房地产市场风云突变,一则重磅消息如惊雷般响彻...
晶科能源携多款创新光储方案亮相... 转自:证券日报网    本报记者 曹琦    6月11日至13日,第十八届(2025)国际太阳能光伏...
“山有木兮卿有意,昨夜星辰恰似... “山有木兮卿有意,昨夜星辰恰似你”是什么意思?“山有木兮卿有意,昨夜星辰恰似你”的意思是“我对你有意...
股权转让+增资 日联科技拿下... 转自:证券日报网    本报记者 李亚男    6月13日晚间,日联科技集团股份有限公司(以下简称“...
一个人开什么店好,两万块开什么... "劳动人民、劳动灵魂和劳动都是人."这在去年开始流行,所有工作的人都拿他们的工作开玩笑。经过几十年的...
杭州市城区周边哪里有菜地(旱地... 杭州市城区周边哪里有菜地(旱地)或山地租?我想租个几亩种种?若有,大概要多少钱一亩?杭州市城北郊区就...
西湖不欢迎“粗暴的手” 转自:中国环境网近日,“杭州西湖石刻有人拔断松鼠尾巴”一事引起了网友们的关心和讨论。对此,西湖水域管...
吕姓股民向普利退发起索赔 许峰...   受损股民可至Hehson股民维权平台登记该公司维权:http://wq.finance.sina...
家里有几个多事的大姑姐怎么办 家里有几个多事的大姑姐怎么办其实只要心态放平一点就好了,家里的大姑姐平常也没有什么事情做,所以只能聊...
贝尔计划赛季末重返皇马,贝尔重... 贝尔计划赛季末重返皇马,贝尔重回皇马的主要原因有哪些?齐达内让他进入首发,不是信任,而是希望在今年夏...
名侦探柯南为什么会有快兰的说法 名侦探柯南为什么会有快兰的说法你可以去看剧场版十四天空中的遇难船的1分30秒的预告片里面有……小兰和...
求跟侠岚类型的动画片 求跟侠岚类型的动画片《千年寻》一样!
刘备为何不踏实治理好夺取的荆州... 刘备为何不踏实治理好夺取的荆州四郡,而是非要借南郡?因为南郡的地理位置太过于紧要,是荆州四郡的门户,...
问道手游70套装怎么做 问道手... 问道手游70套装怎么做 问道手游70级极品套装打造步骤全面解析首先来说的第一个问题 套装是由超级...
苏超第四轮燃爆,网友:小龙虾大... 格隆汇6月14日|据央视财经,在苏超第四轮赛事中,淮安队将迎战南京队,被大家调侃是“小龙虾”与“盐水...
卓驭科技CEO沈劭劼:智能驾驶...   2025第十七届轩辕汽车蓝皮书论坛于2025年6月13日-15日在广州举行。卓驭科技CEO沈劭劼...
倾世王妃的繁体字怎么写的啊 倾世王妃的繁体字怎么写的啊倾世皇妃__倾世皇妃倾世王妃差别就在第一个字
羊城夏夜上演“粤乐新唱·潮挞非... 中新网广州6月14日电 (程景伟 文瑶)当高胡的悠扬遇见架子鼓的爆裂,当粤剧的锣鼓铿锵与贝斯的低沉吟...
前5月我国人民币贷款增加10.... 转自:中工网人民日报海外版北京6月13日电(记者徐佩玉)中国人民银行13日发布的金融统计数据显示,前...
光纤宽带机房为什么有尖叫声 光纤宽带机房为什么有尖叫声呵呵,主板设备,交换机里面有很多小的散热风扇,你听到的声音应该是风扇的声音...