美文网首页
Java接口 方法与变量

Java接口 方法与变量

作者: 滴答大 | 来源:发表于2018-10-11 19:26 被阅读19次

1、定义


屏幕快照 2018-10-11 下午5.51.13.png

2、接口定义

 格式:
  public interface MyInterface {
/*
* 在任何版本都可以定义抽象方法
* public  abstract 是两个固定的修饰关键字,可以缺省
* */

public  abstract  void  method1();
public   void  method2();
abstract  void  method3();
void  method4();
 }

3、接口的使用

    public static void main(String[] args) {

    MyInterfaceIMPL impl = new MyInterfaceIMPL();
    impl.method1();
    impl.method2();
    impl.method3();
    impl.method4();

    }

4、接口中添加抽象方法。
在其实现中必须全部实现所有的抽象方法;

格式
 public  abstract  void  method1();

5、接口中添加默认的方法。Java8 后(在不修改子类的情况下,在接口中添加方法)

格式:
 public  default  void  method1(){
  //方法体
 }
屏幕快照 2018-10-12 上午10.33.46.png

6、接口中允许定义静态方法;

 格式:
 public  static  void  method1(){
  //方法体
 }

错误用法:但是不能通过接口的实现类对象来调用接口中的静态方法
正确用法:通过接口名称,直接调用静态方法;
格式:接口名称.静态方法名(参数)


屏幕快照 2018-10-12 上午10.48.11.png

7、私有方法
Java9后可以定义私有方法,用于封装接口内部包含重复的代码的方法,但是不公开其方法名;
私有方法:
普通私有方法 和静态私有方法

//普通私有方法
private void MethodD(){
    System.out.println("接口的私有方法");
}

  //静态私有方法

用于解决多个静态方法之间代码重复的问题
private static void MethodE(){
System.out.println("接口的静态私有方法");
}

8、接口变量


屏幕快照 2018-10-12 上午11.14.24.png

定义:

 public interface InterfaceConst {

//public static final灰色代表可省略
//⚠️:必须手动赋值
public static final int num = 10;
 }

使用:

   public static void main(String[] args) {
    int num = InterfaceConst.num;
    System.out.println("接口变量的使用:"+num);
}

9、接口代码示例

public interface InterfaceA {

 // 定义接口变量
  public static final int num = 10;

 //抽象方法
public abstract void methodA();

//默认方法
public default void MethodB(){
    System.out.println("接口的默认方法");
    MethodD();
}

//静态方法-只与类有关系
public static  void  MethodC(){
    System.out.println("接口的静态方法");
}

//普通私有方法
private void MethodD(){
    System.out.println("接口的私有方法");
}

//静态私有方法
private  static  void MethodE(){
    System.out.println("接口的静态私有方法");
}
}

10、接口总结


屏幕快照 2018-10-12 上午11.22.16.png

11、使用接口的注意事项 (继承父类并实现多个接口)


屏幕快照 2018-10-12 上午11.32.33.png

12、接口之间的多继承


屏幕快照 2018-10-12 上午11.36.53.png
使用方法 屏幕快照 2018-10-12 上午11.39.50.png

相关文章

网友评论

      本文标题:Java接口 方法与变量

      本文链接:https://www.haomeiwen.com/subject/irxiaftx.html