一个类可以有一个接口,接口可以有一个Java类吗?

在第一步中,我们将看到类可以在Java中具有接口吗?

  • 是的,可以在类内部定义一个接口。

  • 该接口是在另一个接口中定义的,称为嵌套接口,但是当我们在类内部定义一个接口时,该接口也称为嵌套接口。

  • 在类内部定义接口的目的是对相关接口进行分组,以便可以轻松管理它们。

  • 一旦在类中定义了接口,则我们将无法直接访问接口(即,接口必须由类引用)。

  • 当我们在类中定义接口时,对访问修饰符有限制。

  • 在类中定义的接口上不必强制给“ static”关键字加上前缀,因为默认情况下该接口是静态的。

语法:

    class MyClass{

        //MyClass代码

        interface MyInterface(){

            //MyInterface代码

        }

    }

示例

//Java程序演示的例子

//在类中定义接口

class MyClass {

    //类中的接口定义

    interface MyInterface {

        void display();

    }

}

public class Main implements MyClass.MyInterface {

    String str = "we are learning Java Programming";

    //覆盖接口的抽象方法

    public void display() {

        System.out.print("Hi,");

    }

    public static void main(String[] args) {

        Main m = new Main();

        MyClass.MyInterface mc = new Main();

        //调用接口的Main class方法

        mc.display();

        System.out.println(m.str);

    }

}

输出结果

Hi, we are learning Java Programming

在第二步中,我们将看到接口在Java中可以有一个类吗?

  • 是的,可以在接口内部定义一个类。

  • 在接口内定义类的目的是对相关接口进行分组,以便可以轻松管理它们。

  • 一旦在接口中定义了一个类,那么我们将无法直接访问该类(即,一个类必须由接口引用)。

  • 当我们在接口中定义一个类时,对访问修饰符没有任何限制。

  • 不必在接口中定义的类前面加上“ static”关键字,因为默认情况下该类为public。

语法:

    interface MyInterface{

        //MyInterface代码

        class MyClass(){

            //MyClass代码

        } 

    }

示例

//Java程序演示的例子

//在接口中定义一个类

interface MyInterface {

    //MyClass定义

    class MyClass {

        String str = "Java support OOPS Concept";

        void display() {

            System.out.print("Hi,");

        }

    }

}

public class Main extends MyInterface.MyClass {

    public static void main(String[] args) {

        //主类被实例化

        Main m = new Main();

        //调用MyClass方法

        m.display();

        System.out.println(m.str);

    }

}

输出结果

Hi, Java support OOPS Concept

以上是 一个类可以有一个接口,接口可以有一个Java类吗? 的全部内容, 来源链接: utcz.com/z/316015.html

回到顶部