第3节接口
接口概述
接口就是一种公共的规范标准,只要符合规范标准,大家都可以通用
Java中的接口更多的体现在对行为的抽象
接口的特点
- 接口用关键字interface修饰
- public interface 接口名{}
- 类实现接口用implements表示
- public class 类名 implements 接口名{}
- 接口不能实例化
- 接口如何实例化呢?参照多态的方式,通过实现类对象实例化,这叫接口多态。
- 多态的形式:具体类多态,抽象类多态,接口多态。
- 多态的前提:有继承或者实现关系;有方法重写;有父(类/接口)引用指向(子/实现)类对象
- 接口的实现类
- 要么重写接口中的所有抽象方法
- 要么是抽象类
package itheima_13; public interface Jumpping { public abstract void jump(); }
package itheima_13; public class Cat implements Jumpping{ @Override public void jump() { System.out.println("猫可以跳高了"); } }
package itheima_13; /* * 测试类 * */ public class JumppingDemo { public static void main(String[] args) { Jumpping a=new Cat(); a.jump(); } }
接口的成员特点
成员变量
只能是常量
默认修饰符:public static final
构造方法
接口没有构造方法,因为接口主要是对行为进行抽象的,是没有具体存在
一个类如果没有父类,默认继承自Object类
成员方法
只能是抽象方法
默认修饰符:public abstract
关于接口中的方法,JDK8和JDK9中有一些新特性,后面再讲解
package itheima_14; public interface Inter { public int num1=10; public final int num2=20; public static final int num3=30; public abstract void method(); void show(); }
package itheima_14; public class InterImpl extends Object implements Inter{ public InterImpl() { } @Override public void method() { System.out.println("method"); } @Override public void show() { System.out.println("show"); } }
package itheima_14; /* * 测试类 * */ public class InterfaceDemo { public static void main(String[] args) { Inter i=new InterImpl(); System.out.println(i.num1); System.out.println(i.num2); System.out.println(Inter.num1); } }

浙公网安备 33010602011771号