¿Puede una clase tiene una interfaz y una interfaz puede tener una clase en Java?

Aquí, vamos a aprender que puede un class tener un class y pueden tener un interface un interface en el lenguaje de programación Java?

En el primer paso, vamos a ver un puede tener un class class en Java?

  • Sí, es posible definir un interface dentro del interface.
  • El class se define en otro interface se conoce como interface anidada, pero cuando definimos un interface dentro de la interface entonces que también se conoce como el class anidada.
  • El objetivo de definir una interface dentro de un interface se utiliza para las interfaces relacionados con el grupo para que puedan ser manejados fácilmente.
  • Una vez que un class se define en una interface entonces no somos capaces de acceder a una class directamente (es decir, un interface debe ser referido por una interface).
  • Hay una restricción en modificadores de acceso cuando definimos una class en un interface.
  • No es obligatorio para prefijar la palabra clave “class” con las interfaces definidas en un static porque el class es por interface default.

Sintaxis:

    class MyClass{
// MyClass Code
interface MyInterface(){
//MyInterface Code
}
}

Ejemplo:

// Java program to demonstrate the example of
// defining an interface in a class
class MyClass {
// Interface definition in a class
interface MyInterface {
void display();
}
}
public class Main implements MyClass.MyInterface {
String str = "we are learning Java Programming";
// override abstract method of interface
public void display() {
System.out.print("Hi,");
}
public static void main(String[] args) {
Main m = new Main();
MyClass.MyInterface mc = new Main();
// Calling Main class method of interface
mc.display();
System.out.println(m.str);
}
}

salida

Hi, we are learning Java Programming

En el segundo paso, veremos puede tener un static un interface en Java?

  • Sí, es posible definir un class dentro del class.
  • El objetivo de definir una interface dentro de un class se utiliza para las interfaces relacionados con el grupo para que puedan ser manejados fácilmente.
  • Una vez que un interface se define en una class entonces no somos capaces de acceder a un interface directamente (es decir, un class debe ser referido por una class).
  • No hay ninguna restricción sobre modificadores de acceso cuando definimos un interface en un class.
  • No es obligatorio para prefijar la palabra clave “interface” con el static definido en un class porque el interface es por class default.

Sintaxis:

    interface MyInterface{
// MyInterface Code
class MyClass(){
// MyClass Code
}
}

Ejemplo:

// Java program to demonstrate the example of
// defining a class in an interface
interface MyInterface {
// MyClass definition
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 class is instantiated
Main m = new Main();
// Calling MyClass method
m.display();
System.out.println(m.str);
}
}

salida

Hi, Java support OOPS Concept


Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *