Java入门——day15

一、今日学习

1.认识接口

(1)接口是一种特殊的抽象类

(2)接口中只能够包含抽象的方法和常量,不能有变量、初始化块和构造函数。

(3)接口中的方法都是抽象类,并没有方法具体的实现,接口中的方法,必须由接口的实现类来实现。

 1 interface Student{
 2     int clas=0604;
 3     void learning();
 4     void eat();
 5     void sleep();
 6 }
 7 class Student1 implements Student{
 8     public void eat() {
 9         System.out.println("学生正在学习");
10     }
11     public void learning() {
12         System.out.println("学生正在吃饭");
13     }
14     public void sleep() {
15         System.out.println("学生正在睡觉");
16     }
17 }

2.接口的声明

(1)接口定义分为接口的声明和接口体,接口体由常量定义和方法定义两部分组成。

(2)格式:

[修饰符] interface 接口名 [extends 父接口名列表]{

[public] [static] [final] 常量;

[public] [abstract] 方法;

}

  • 修饰符:可选,用于指定接口的访问权限,可选值为public,如果省略则使用默认的访问权限;

  • 接口名:必选参数,用于指定接口的名称,接口名必须是合法的Java标识符,一般要求首字符大写;

  • extends 父接口名列表:可选参数,用于指定要定义的接口继承于哪个父接口,当使用extends关键字时,父接口名为必选参数;

  • 方法:接口名中的方法只有被定义而没有被实现。

注意:与Java类文件一样,接口文件的文件名必须与接口名相同


3.使用接口

(1)接口不能单独实例化,要想实例化接口,必须通过接口的实现类来完成,接口的实现类,必须全部实现接口中的所以方法,接口就是标准,用来隔离具体实例的。

(2)接口定义后,在类中用关键字implements来实现接口。

[修饰符] class <类名> [extends 父类名] [implements 接口列表]{

}

  • 修饰符:可选参数,用于指定类的访问权限,可选值为public、abstract和final

  • 类名:必选参数,用于指定类的名称,类名必须是合法的Java标识符,一般要求是字母大写

  • extends 父类名:可选参数,用于指定要定义的类继承于哪个父类,当使用extends关键字时,父类名为必选参数

  • implements 接口列表:可选参数,用于指定该类实现的是哪些接口,当使用implements关键字时,接口列表为必选参数,当接口列表中存在多个接口时,各接口名之间使用逗号分隔。

(3)在类中实现接口时,方法的名字、返回值类型、参数的个数及类型必须与接口中的完全一致,并且必须实现接口中的所有方法

(4)接口的实例化:接口 对象名=new 接口的实现类();

二、遇到问题

对于接口的使用仍然比较陌生

三、明日学习

Java接口的特征归纳、接口继承与标记接口

原文地址:https://www.cnblogs.com/znjy/p/13352471.html