JAVA 接口

    友情提示:如果没有了解类的继承请先去看一下我前面的  Java 继承


 

目录

1.接口的介绍

    1.1接口定义的基本格式

    1.2 接口的组成

2.接口中的方法 

    2.1 抽象方法     

        2.1.1 基本格式

        2.1.2 代码举例

2.2 默认方法     

    2.2.1 基本格式

    2.2.2 代码举例

   2.2.3 总结一下

2.3 静态方法   

    2.3.1 基本格式  

    2.3.2 代码举例

     2.3.3 总结一下

    2.4 私有方法     

        2.4.1 基本格式

       2.4.2 代码举例

   2.4.3 总结一下


1.接口的介绍

    1.1接口定义的基本格式

       public interface 接口名{  content   }

    1.2 接口的组成

  •   抽象方法
  •   默认方法
  •   静态方法
  •   私有方法
  •   常量         public static final 数据类型 变量名  (在接口中定义变量时必须赋值)

2.接口中的方法 

    2.1 抽象方法     

        2.1.1 基本格式

               public abstract 返回值类型 方法名(){ 没有方法体 }

              (可省略 pulic 和 abstract )

               在接口中,没有 public abstract 关键字的方法依旧是抽象方法

        2.1.2 代码举例

public interface method1 {
    public abstract void show();
}

public class method2 implements method1{
    public void show() {
    	System.out.print("抽象方法show()");
    }
	public static void main(String[] args) {
		// TODO 自动生成的方法存根
          method2 one=new method2();              //"抽象方法show()"
          one.show();
	}

}

2.2 默认方法     

    2.2.1 基本格式

          public default 返回值类型 方法名(){ 方法体 }

        ( 可以省略public )( 不可省略default )

    2.2.2 代码举例

public interface method1 {
    public abstract void show();
    public default void add() {
    	System.out.print("接口的默认方法add()");
    }
}

public class method2 implements method1{
    public void show() {
    	System.out.print("抽象方法show()");
    }
	public static void main(String[] args) {
          method2 one=new method2();
          one.add();
	}
}

   2.2.3 总结一下

       默认方法可以用在接口升级的时候

   所谓接口升级就是在 已有接口中我们需要新增一些抽象方法时,我们必须在接口的实现类进行重写新增的抽象方法。

    如果我们不想重写方法的时候,我们就可以在接口中使用默认方法来实现具体的代码

2.3 静态方法   

    2.3.1 基本格式  

  public static 返回值类型 方法名(){ 方法体 }

  静态方法的使用:接口名.静态方法名()

    2.3.2 代码举例

public interface method1 {
    public abstract void show();
    public default void add() {
    	System.out.print("接口的默认方法add()");
    }
    public static void get() {
    	System.out.print("接口的静态方法get()");
    }
}	

public class method2 implements method1{
    public void show() {
    	System.out.print("抽象方法show()");
    }
	public static void main(String[] args) {
          method2 one=new method2();
          one.get();                // 报错
          method1.get();           // "接口的静态方法get()"
	}
}

     2.3.3 总结一下

   如果用接口实现类的对象进行访问会出现错误

   method2 one=new method2();
   one.get();                // 报错

    2.4 私有方法     

        2.4.1 基本格式

private  返回值类型 方法名(){ 方法体 }

私有方法只能在接口的默认方法和静态方法中 接口的实现类是不能访问的

       2.4.2 代码举例

      私有方法在默认方法中

public interface method1 {
     public default void add() {
        hello();
    }
    private void hello() {
    	System.out.print("hello everyone");
    }
}	

public class method2 implements method1{
    
	public static void main(String[] args) {
          method2 one=new method2();
           one.add();
	}
}

       私有方法在静态方法中

public interface method1 {
     public static void add() {
        hello();
    }
    private static void hello() {
    	System.out.print("hello everyone");
    }
}	

public class method2 implements method1{
    
	public static void main(String[] args) {
          method2 one=new method2();
           one.add();
	}
}

   2.4.3 总结一下

  私有方法只存在于接口内部,接口的实现类是访问不了

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

cfw19990927

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值