前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【Java百炼成神】魂尊篇——面向对象(接口)

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

作者头像
陶然同学
发布2023-02-27 10:11:30
3260
发布2023-02-27 10:11:30
举报
文章被收录于专栏:陶然同学博客

目录

1.引言

2.概念&入门

        2.1概念

        2.2入门:定义接口

3.进阶:实现接口

4.IDEA快捷实现接口

5.接口强化练习

5.1练习1:管理班级接口

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

6.接口的注意事项

1.引言

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

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

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

否则手机没法正常打电话、发短信

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

2.概念&入门

        2.1概念

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

接口:用来定义规范。  以制造手机为例:

 在 Java 中,接口 = 规范

        2.2入门:定义接口

需求说明: 

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

请将手机的设计规范定义为 Java 中的接口  知识讲解: 

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

2、 接口定义格式为: 

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

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

代码实现: 

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

3.进阶:实现接口

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

所以我们必须根据接口来定义普通 Java 类,使用普通 Java 类创建对象。

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

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

格式:

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

需求: 

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

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

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

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

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

分析: 

1、定义实现类

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

实现: 

Iphone 类:(实现接口)

代码语言:javascript
复制
public class IPhone implements Phone { 
 @Override 
 public void call() { 
 System.out.println("打电话"); 
 } 
 @Override 
 public void sendMessages() { 
 System.out.println("发短信"); 
 } 
}

Demo1 类:

代码语言:javascript
复制
public static void main(String[] args) { 
 IPhone ip = new IPhone(); 
 ip.call(); 
 ip.sendMessages(); 
}

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

4.IDEA快捷实现接口

IDEA 可以帮我们快捷定义某个接口的实现类: 

5.接口强化练习

5.1练习1:管理班级接口

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

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

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

定义讲师(Lecturer)类,让讲师具备管理班级的功能。  注意:实现了哪个接口,我们就认为:类就具备了哪些功能。 

例如: 

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

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

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

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

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

他们之间的关系为: 

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

孩子是学生,有学习功能 

父亲不是学生,没有学习功能  学习(study),跑步(run) 

6.接口的注意事项

  • 接口中不可以定义构造方法,更无法直接创建对象 
  • 接口中不可以定义普通成员变量,只能定义常量。接口中的常量默认被 public static final 修饰 

  •  Java 支持一个类实现多个接口

  •  接口之间也可以使用继承,而且一个接口可以有多个父接口

  •  接口中可以定义 static 方法,static 方法必须编写方法体

  •  一个类既可以继承父类,同时也可以实现接口,继承和实现之间没有相互的干扰 

练习: 

自定义接口,尝试验证以上注意事项。 

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-06-14,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1.引言
  • 2.概念&入门
    •         2.1概念
      •         2.2入门:定义接口
      • 3.进阶:实现接口
      • 4.IDEA快捷实现接口
      • 5.接口强化练习
        • 5.1练习1:管理班级接口
          • 5.2练习2:孩子继承父亲 孩子是学生 父亲不是学生
          • 6.接口的注意事项
          相关产品与服务
          短信
          腾讯云短信(Short Message Service,SMS)可为广大企业级用户提供稳定可靠,安全合规的短信触达服务。用户可快速接入,调用 API / SDK 或者通过控制台即可发送,支持发送验证码、通知类短信和营销短信。国内验证短信秒级触达,99%到达率;国际/港澳台短信覆盖全球200+国家/地区,全球多服务站点,稳定可靠。
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档