【Java百炼成神】魂尊篇——面向对象(接口)

简介: 【Java百炼成神】魂尊篇——面向对象(接口)

1.引言


在现实生活中,处处需要制定规范:

例如:电脑插头设计时,必须有规范,否则无法正常和插排连接

微信图片_20220530123058.png

例如:手机设计时,需要有规范

否则手机没法正常打电话、发短信微信图片_20220530123111.png

Java 世界中也有规范,为了学习 Java 中如何制定规范,我们就需要学习接口知识  

     

2.概念&入门


2.1概念


官方定义:接口是一系列方法的声明,是一些方法特征的集合

接口:用来定义规范。

 

以制造手机为例:微信图片_20220530123308.png

在 Java 中,接口 = 规范


2.2入门:定义接口


需求说明:


公司提出手机(Phone)的设计规范:手机可以打电话(call),可以发信息(sendMessage)


请将手机的设计规范定义为 Java 中的接口

知识讲解:


1、 接口定义时需要使用 interface 关键字


2、 接口定义格式为:  


public interface 接口名 { 
返回值类型 方法名 1(参数列表); 
}

注:接口中非静态成员方法都无需方法体

代码实现: 微信图片_20220530123416.png

微信图片_20220530123433.png微信图片_20220530123439.png

接口定义完毕,就制定了一个 Phone 接口,为其他手机类的定义,制定了规范


3.进阶:实现接口


因为接口无法直接创建对象,

所以我们必须根据接口来定义普通 Java 类,使用普通 Java 类创建对象。微信图片_20220530123519.png

根据接口定义普通 Java 类,重写接口中方法的过程,我们称为:实现接口


实现接口的普通 Java 类,我们也叫做实现类


格式:

public class 类名 implements 接口名 { 
 重写接口中的方法 
 }


//


需求:


请在公司提出的手机(Phone)的设计规范的基础上,定义苹果手机类(IPhone),


将接口中提出的两个功能,真正实现出效果:


打电话(call):控制台展示“打电话”


发信息(sendMessage):控制台展示“发短信”


最终在测试类中,创建一个苹果手机类对象,分别调用两个方法


分析:


1、定义实现类

微信图片_20220530123613.png

2、通过实现类,创建对象

实现:

Iphone 类:(实现接口)

public class IPhone implements Phone { 
 @Override 
 public void call() { 
 System.out.println("打电话"); 
 } 
 @Override 
 public void sendMessages() { 
 System.out.println("发短信"); 
 } 
}

Demo1 类:

public static void main(String[] args) { 
 IPhone ip = new IPhone(); 
 ip.call(); 
 ip.sendMessages(); 
}

总结:实现接口就是:Iphone 类将接口所有方法逐一重写,从而真正实现了每个方法的功能。


4.IDEA快捷实现接口


IDEA 可以帮我们快捷定义某个接口的实现类: 微信图片_20220530123622.png微信图片_20220530123743.png微信图片_20220530123748.png微信图片_20220530123753.png

5.接口强化练习


5.1练习1:管理班级接口


定义管理班级接口(Management):


接口中定义两个方法:作业检查(check)、考试(exam)


定义班主任(ClassTeacher)类,让班主任具备管理班级的功能。


定义讲师(Lecturer)类,让讲师具备管理班级的功能。

注意:实现了哪个接口,我们就认为:类就具备了哪些功能。


例如:


1、 实现了手机接口,类就具备了手机功能


2、 实现了飞行接口,类就具备了飞行功能


3、 实现了计算接口,类就具备了计算功能。


5.2练习2:孩子继承父亲 孩子是学生 父亲不是学生


现有如下类或接口:父亲(Father),孩子(Child),学生(Student)


他们之间的关系为:


孩子继承了父亲,都能跑步锻炼


孩子是学生,有学习功能


父亲不是学生,没有学习功能

学习(study),跑步(run)


6.接口的注意事项


  • 接口中不可以定义构造方法,更无法直接创建对象
  • 接口中不可以定义普通成员变量,只能定义常量。接口中的常量默认被 public static final 修饰  微信图片_20220530124032.png
  • Java 支持一个类实现多个接口
  • 微信图片_20220530124040.png
  • 接口之间也可以使用继承,而且一个接口可以有多个父接口


  • 微信图片_20220530124045.png
  • 接口中可以定义 static 方法,static 方法必须编写方法体
  • 微信图片_20220530124050.png
  • 一个类既可以继承父类,同时也可以实现接口,继承和实现之间没有相互的干扰

 

目录
打赏
0
0
0
0
80
分享
相关文章
百炼-千问模型通过openai接口构建assistant 等 go语言
由于阿里百炼平台通义千问大模型没有完善的go语言兼容openapi示例,并且官方答复assistant是不兼容openapi sdk的。 实际使用中发现是能够支持的,所以自己写了一个demo test示例,给大家做一个参考。
JAVA接入DeepSeek大模型接口开发---阿里云的百炼模型
随着大模型的越来越盛行,现在很多企业开始接入大模型的接口,今天我从java开发角度来写一个demo的示例,用于接入DeepSeek大模型,国内的大模型有很多的接入渠道,今天主要介绍下阿里云的百炼模型,因为这个模型是免费的,只要注册一个账户,就会免费送百万的token进行学习,今天就从一个简单的可以执行的示例开始进行介绍,希望可以分享给各位正在学习的同学们。
151 3
JAVA接入DeepSeek大模型接口开发---阿里云的百炼模型
java面试-基础语法与面向对象
本文介绍了 Java 编程中的几个核心概念。首先,详细区分了方法重载与重写的定义、发生阶段及规则;其次,分析了 `==` 与 `equals` 的区别,强调了基本类型和引用类型的比较方式;接着,对比了 `String`、`StringBuilder` 和 `StringBuffer` 的特性,包括线程安全性和性能差异;最后,讲解了 Java 异常机制,包括自定义异常的实现以及常见非检查异常的类型。这些内容对理解 Java 面向对象编程和实际开发问题解决具有重要意义。
42 15
非常实用的Http应用框架,杜绝Java Http 接口对接繁琐编程
UniHttp 是一个声明式的 HTTP 接口对接框架,帮助开发者快速对接第三方 HTTP 接口。通过 @HttpApi 注解定义接口,使用 @GetHttpInterface 和 @PostHttpInterface 等注解配置请求方法和参数。支持自定义代理逻辑、全局请求参数、错误处理和连接池配置,提高代码的内聚性和可读性。
323 3
java语言后台管理若依框架-登录提示404-接口异常-系统接口404异常如何处理-登录验证码不显示prod-api/captchaImage 404 (Not Found) 如何处理-解决方案优雅草卓伊凡
java语言后台管理若依框架-登录提示404-接口异常-系统接口404异常如何处理-登录验证码不显示prod-api/captchaImage 404 (Not Found) 如何处理-解决方案优雅草卓伊凡
276 5
|
5月前
|
在Java中如何实现接口?
实现接口是 Java 编程中的一个重要环节,它有助于提高代码的规范性、可扩展性和复用性。通过正确地实现接口,可以使代码更加灵活、易于维护和扩展。
301 64
|
5月前
|
在Java中,接口之间可以继承吗?
接口继承是一种重要的机制,它允许一个接口从另一个或多个接口继承方法和常量。
446 60
|
5月前
|
在 Java 中,一个类可以实现多个接口吗?
这是 Java 面向对象编程的一个重要特性,它提供了极大的灵活性和扩展性。
243 58
|
5月前
|
在Java中实现接口的具体代码示例
可以根据具体的需求,创建更多的类来实现这个接口,以满足不同形状的计算需求。希望这个示例对你理解在 Java 中如何实现接口有所帮助。
149 38
利用Java获取京东SKU接口指南
本文介绍如何使用Java通过京东API获取商品SKU信息。首先,需注册京东开放平台账号并创建应用以获取AppKey和AppSecret。接着,查阅API文档了解调用方法。明确商品ID后,构建请求参数并通过HTTP客户端发送请求。最后,解析返回的JSON数据提取SKU信息。注意遵守API调用频率限制及数据保护法规。此方法适用于电商平台及其他数据获取场景。

热门文章

最新文章

AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等