• 接口中方法详解


    一.接口简介

          接口(interface),是java中一种引用数据类型,可以看做方法的集合,其内部主要就是封装了方法,包含抽象方法(JDK 7及以前),默认方法和静态方法(JDK 8),私有方法(JDK 9).

    二.使用举例.

    1.定义格式:
    public interface 接口名称{
           //抽象方法
           //默认方法
           //静态方法
           //私有方法
    }
    2. 实现接口的类定义:
    public class 类名 implements 接口名{
           //实现接口中抽象方法(必须)
           //重写接口中默认方法(可选)
    }
    3.注意:

    1. 接口不能创建对象,但可以被实现,接口的子类必须实现接口中所有的抽象方法.默认方法是可选的.
    2. 接口中无法定义变量,可以定义常量,默认使用public static final修饰(永远不可变
    3. 接口中没有构造方法,没有代码块

    三.各类方法详解.

    1. 抽象方法:
      使用abstract修饰,供子类实现使用
      public abstract void method();

    注意:所有方法在接口中(定义上)都是抽象方法,所以abstract关键字也可以不写,而接口代表对外行为的集合,在方法的声明中,所有都默认是 public,所以public也可以不写 可以直接写成(void methods);

    1. 默认方法
      使用default修饰,不可省略,供子类调用或重写(只能通过最终实现类调用, 不能通过抽象类调用)
      public default void method(){
             //执行语句
      }

    2. 静态方法
      用static 修饰,供接口直接调用.只能通过接口名称调用.子类不能继承或重写
      public static void method(){
             //执行语句
      }

    3. 私有方法
      使用private修饰,供接口中的默认方法或静态方法调用
      private void method(){
             //执行语句
      }

    默认方法的使用举例:
    例:(只能通过最终实现类(没有abstract修饰)调用,不能通过抽象类调用 )

            public interface Test{
                 public default void print(){
                      System.out.print("我是默认方法");
                 }
             }
             public class TestImpl implements Test{
                 //1.什么也不写,通过对象即可调用
                 //2.或者进行重写  
             }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    静态方法的使用:
    例:(只能通过接口名称调用)

      public interface Test{
             public static void print(){
                 System.out.ptinr("我是静态方法");
             }
         }
         public class TestImpl  implements Test{
             //无法重写也无法继承静态方法
         }
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    在这里插入图片描述

  • 相关阅读:
    回溯法解排队购物问题(C++)
    Java中加减乘除的性能和位运算的性能比较
    MySQL使用ReplicationConnection导致的连接失效分析与解决
    不小心删除了docker/overlay2怎么办?
    java进阶专栏的学习指南
    XSS漏洞
    python 通过图片(原图)精确获取图片拍摄的位置
    MS31703H 桥栅极驱动控制器,可P2P替代TI的DRV8703
    【EI复现】基于主从博弈的新型城镇配电系统产消者竞价策略【IEEE33节点】(Matlab代码实现)
    互联网技术岗笔试基础题目练习①
  • 原文地址:https://blog.csdn.net/wangliangluang/article/details/125471620