当前位置:首页 > 生活百科

java什么是接口回调(java接口的作用和意义)

栏目:生活百科日期:2025-03-17浏览:0

前言

接口是Java中的一个重要的类型,实际项目开发中会大量使用到接口,也称为:面向接口编程,本章将详细介绍接口的概念和使用以及内部类。

接口

接口是什么

生活中的接口如电脑上的USB接口,规范了接口的形状、尺寸等,只要符合该规范的设备就可以连接上去。

程序中的接口是一套规范,规定了方法的定义,只要是实现了该接口的类必须按照接口的规范来定义。

使用接口

定义接口的语法:

public interface 接口名{静态常量的定义;方法的定义;}

定义接口要注意:

方法是abstract的,不能实现定义的属性会自动转变为静态常量方法只能是public的,默认是public

实现接口

public class 类名 implements 接口名{具体方法的实现}

实现接口要注意:

必须实现所有接口中的方法方法必须和接口中定义的完全一致方法必须是public的一个类可以实现多个接口一个类可以继承类同时实现接口

class 类名 extends 父类 implements 接口{}

接口可以继承接口,实现类必须实现所有的方法

interface A{void testA();}//接口之间的继承interface B extends A{void testB();}class C implements B{public void testA() {}public void testB() {}}

接口在开发中的意义

为类的实现制定一套规范把设计和实现分开

default关键字

Java1.8的新特性,被default定义的方法可以有默认的实现。

public interface Person {//给接口方法默认的实现default void eat(){System.out.println("在吃饭!!");}void walk();}

实现类不强制要求实现带default的方法。

接口与抽象类的异同

接口和抽象类的区别是常见的面试题相同点:

都可能存在没有实现的方法都不能实例化

不同点:

抽象类是单一继承,类可以实现多个接口接口不能定义构造方法接口中的方法只能是public,抽象类可以有各种访问类型的方法。接口中只能定义静态常量,抽象类可以定义普通的成员变量。接口中的抽象方法不用加abstract,抽象类必须加。

内部类

内部类就是在类里面定义的类。Java的内部类包含:

成员内部类静态内部类局部内部类匿名内部类

成员内部类

和成员变量(属性)、成员方法同级的,都是属于某一个对象所有的。语法:

class 外部类{class 内部类{...}}

特点:

一般只在外部类的里面使用成员内部类和类的属性和方法同一级别。属于类的对象,在创建每个对象时加载到内存

静态内部类

成员内部类加上static,就是静态内部类语法:

public class 外部类{static class 内部类{}}

和成员内部类的区别:

成员内部类属于对象,静态内部类属于外部类成员内部类每创建一个对象加载一次,静态内部类和外部类一起加载成员内部类能访问外部类的所有成员,静态内部类只能访问外部类静态的成员

局部内部类

在方法中定义的类,只能在当前方法中使用,方法调用时加载类到内存中。语法:

class 外部类{public void test(){class 内部类{}内部类 对象 = new 内部类();}}

匿名内部类

一个没有名字的内部类,创建类的同时创建了对象。应用场合:接口或抽象类的实现类只需要使用一次,代码是一次性的。语法:

new 接口/抽象类(){实现方法};

实现USB案例

//Usb接口interface Usb{void connect(); //连接void charge(); //充电}//匿名内部类实现接口Usb usb = new Usb(){public void connect(){System.out.println("Test2测试连接");}public void charge(){System.out.println("Test2测试充电");}};usb .connect();usb .charge();

和一般类的区别:

没有名字只能使用一次没有构造方法不能定义静态成员

面试题:在?处填写什么可以在控制台输出30,20,10。

class Outer { public int num = 10;     class Inner {         public int num = 20;         public void show() {             int num = 30;             System.out.println(?);   num             System.out.println(?);   this.num             System.out.println(?);   Outer.this.num         }     } } class InnerClassTest {     public static void main(String&[] args) {         Outer.Inner oi = new Outer().new Inner();         oi.show();     }     }   

结束

留两个作业:

定义播放器接口,播放音乐方法;定义游戏机接口,玩游戏方法;定义电话类,有品牌和价格属性,和打电话方法定义手机类继承电话并实现播放器和游戏机接口定义算术接口,分别定义加减乘除四个方法,每个方法都有两个double参数,返回值为double。使用常规类和匿名内部类两种方式实现接口。

“java什么是接口回调(java接口的作用和意义)” 的相关文章

cdr用什么软件打开(2020新版打开cdr的软件)

大家好,今天分享一篇来自装机吧官网(zhuangjiba.com)的图文教程。cdr文件用什么打开?CorelDRAW是一款非常出色的平面设计软件,很多从事设计...

业务产品经理是什么意思(业务产品经理和技术产品经理区

上一篇中我们介绍了互金里面的平台型产品经理,以及现在互金对产品经理的划分和具体分工,这篇文章主要介绍业务型产品经理具体工作内容。社交类产品属于先有产品再有用户,...

企业微信的坏处和好处(3点简评企业微信优劣势)

大家只要在微信生态内做过营销的人,没人没有被封号的。如果你还没有遇到过,那说明你营销做的不够好。一、企业微信做私域流量的三大优势1.一个企业微信号最高能加25万...

关于营销策划的书籍推荐(自学首选这9本营销书)

为什么说起碳酸饮料,你就想起可口或者百事可乐?为什么电商取代零售业才短短几年,新零售就从破土到发芽?为什么“尊享奢华”、“极致体验”这些高大上的广告词被批为自嗨...

公园摆地摊卖什么最赚钱而且很受欢迎,摆地摊技巧和经验

朋友们好,最近很多朋友留言问老林摆摊卖什么比较好,今天老林根据自己多年研究百货和批发的经验为大家汇总各种夜市地摊公园热卖的产品,价值巨大希望您收藏!!晚上摆夜市...

农村小本有哪些好创业,投资小利润高的项目介绍

对于创业来说,我们可以选择地域,不仅只有城里,农村也不赖的,项目可大可小,有些项目可能需要大量资金注入,但也有些项目不需要投入太多,有些甚至几千块就能启动。对于...

如何实现网赚,真实可靠的网赚项目推荐

这年头钱真是好东西,大家都想拥有更多的财富,这里给大家介绍几个网赚入门的方法吧。通过网络赚钱是现在很多人都在尝试的一种方法,但是大多数人都找不到靠谱的途径。现在...

2023湖南省科技活动周重大示范活动—吉首市乾元小学开

为激发学生的创新精神,普及航模科技教育,培养学生动手能力和合作探究意识,5月24日下午,湖南省科技活动周重大示范活动“科技潇湘吉首行”的重要活动之一——航模系列...

基金产品具体有哪些,基金收益排行

“最近都买什么股票呢?”牛市里,见面打招呼的方式都不一样了。某私募基金人士向《每日经济新闻》记者表达了近期的烦恼,“现在新发的产品都卖得好快,市场部的同事最近都...

三星最贵的手机是哪款手机(三星最高端手机的系列)

三星GalaxyA905G也是一款没上市就传闻已久的机型了,只是国内对于三星手机的关注度不高,所以并没有像其他品牌手机那样引人注意。不过这款手机还是如期发布了,...