美文网首页
java se 接口1.0

java se 接口1.0

作者: 起名字真难难难 | 来源:发表于2020-02-10 19:36 被阅读0次

接口就是一种公用的规范标准,符合规范标准,就可通用
定义接口:
格式

public interface 接口名称{//方法体}

接口中的内容:
1、常量
2、抽象方法
3、默认方法
4、静态方法
5、私有方法

一、接口定义抽象方法

注意事项:
1、接口中的抽象方法是固定的public abstract修饰的
2、public abstract是可以省略的,直接写返回值类型(参数列表);
使用步骤:
1、不能new,不能直接使用,必须有一个实现类来实现接口
2、实现类必须要覆盖重写接口中所有的抽象方法
3、创建实现类对象,并加以使用
注:若实现类没有复写接口中的所有抽象方法,那么这个实现类是抽象的

public interface MyInterface {
    public abstract void methodA();
}
public class ImplementCla implements MyInterface{
    @Override
    public void methodA() {
        System.out.println("A");
    }
}

二、接口定义默认方法

格式:

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

注:默认方法能解决接口升级的问题
接口中添加新的方法,为了使已投入的代码能够继续使用,在接口里创建默认方法

1、接口的默认方法可通过实现类的对象直接调用
2、接口的默认方法可被实现类覆盖
3、创建实现类继承了默认方法,若实现类没有重写默认方法,会向上找到接口

//接口
public interface InterfaceDefault {
    public abstract void method();
    public default void method2(){
        System.out.println("接口的默认方法");
    }
}
//实现类覆盖了接口中所有的方法
public class InterfaceMethodA implements InterfaceDefault {
    @Override
    public void method() {
        System.out.println("A复写了接口的抽象方法");
    }
    @Override
    public void method2(){
        System.out.println("A覆盖了默认方法");
    }
}
//只覆盖了抽象方法,没覆盖默认方法
public class InterfaceMethodB implements InterfaceDefault {
    @Override
    public void method() {
        System.out.println("B复写了接口的抽象方法");
    }
}
public class MainInterface {
    public static void main(String[] args) {
        InterfaceMethodA methodA=new InterfaceMethodA();
        methodA.method();
        methodA.method2();
        System.out.println("================");
        InterfaceMethodB methodB=new InterfaceMethodB();
        methodB.method();
        methodB.method2();
    }
}
运行结果

三、接口定义静态方法

格式:

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

使用方法:接口名.方法名();
实现类创建的对象不能调用

public interface MyInterfaceStatic {
    public static void method(){
        System.out.println("这是一个静态方法");
    }
}
public class MyMainMethod {
    public static void main(String[] args) {
        MyInterfaceStatic.method();//接口名进行调用,不用创建实现类和实现类对象
    }
}

四、接口定义私有方法

public interface ImplementPrivateStatic {
    public static void methodA(){
        commonmethod();
    }
    public static void methodB(){
        commonmethod();
    }
    //只能让上面两个默认方法调用,不能让实现类调用
    public static void commonmethod(){
        System.out.println("AAA");
        System.out.println("BBB");
        System.out.println("CCC");
    }
}

共有方法只能让上面两个默认方法调用,不能让实现类调用,故应将公有方法私有化

1、普通私有方法

解决多个默认方法访问重要代码

private void commonmethod(){
        System.out.println("AAA");
        System.out.println("BBB");
        System.out.println("CCC");
    }
2、静态私有方法
public class MainPrivate {
    public static void main(String[] args) {
        ImplementPrivateStatic.methodA();
        ImplementPrivateStatic.methodB();
    }
}

五、接口中的成员变量(常量)

必须用 public static final进行修饰
格式:

public static final 数组类型 名称=数据值;

注:
1、public static final可省略
2、常量必须赋值
3、常量名称一般使用大写字母加下划线

相关文章

  • java se 接口1.0

    接口就是一种公用的规范标准,符合规范标准,就可通用定义接口:格式 接口中的内容:1、常量2、抽象方法3、默认方法4...

  • JDK 各版本开发者关注的特性

    Java SE 支持路线图 官方特性文档 1. Java 1.0 初代版本 2. Java 1.1 JDBC(Ja...

  • java se接口2.0

    需注意:1、接口没有构造函数和静态代码块2、类的直接父类唯一,但一个类可同时实现多个接口3、常量是由类构造器在初始...

  • 【设计模式】接口隔离原则

    以下内容来自《Java设计模式》 1 接口隔离原则 接口隔离原则定义如下: 接口隔离原则(Interface Se...

  • Java SE 3

    Java SE 1.Java泛型机制 泛型是Java SE1.5引入的特性,泛型的本质是参数化类型。在类、接口和方...

  • Java泛型知识点总结

    从 Java 程序设计语言 1.0 版本发布以来,变化最大的部分就是泛型,致使Java SE 5.0 中增加泛型机...

  • Java IO 1 涉及到的底层概念

    Java io的接口经过了多次迭代,现在主要分为三部分,即java IO (since JDK1.0),java ...

  • Lock接口

    1. 介绍 在Lock接口出现之前,Java程序是靠synchronized关键字实现锁功能的,而Java SE ...

  • Servlet

    1. java.* Java SE的标准库,是java标准的一部分,是对外承诺的java开发接口,通常要保持向后兼...

  • 15 网络编程

    Java SE提供java.net包,其中包含了网络编程所需要的最基础一些类和接口。这些类和接口面向两个不同的层次...

网友评论

      本文标题:java se 接口1.0

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