Clase interna significa una clase que es miembro de otra clase. Hay básicamente cuatro tipos de clases internas en Java.
- Clase interna anidada
- Método Clases internas locales
- Clases internas anónimas
- Clases estáticas anidadas
Java también permite definir una clase dentro de otra clase. Estas se llaman clases anidadas. La clase en la que se define la clase anidada se conoce como clase externa. A diferencia de las clases de nivel superior, las clases internas pueden ser estáticas. Las clases anidadas no estáticas también se conocen como clases internas. En este artículo, implementaremos una clase interna estática en programas Java.
Ejemplo 1: se crea una instancia de la clase interna estática y su método se llama más tarde.
Java
// Java Program to Illustrates Use of Static Inner Class // Outer class public class Gfg { // Display message of inner class static String msg = "GeeksForGeeks"; // Static Inner Class static class InnerClass { // Static Inner Class Method public void display() { // Display message of inner class System.out.println("Welcome to " + msg); } } // Main driver method public static void main(String[] args) { // Creating an instance of the static inner class InnerClass instance = new InnerClass(); // Calling method display through // the inner class instance variable instance.display(); } }
Producción:
Welcome to GeeksForGeeks
Ejemplo 2: crear una instancia de la clase externa y llamar al método de clase interna estática.
Java
// Java Program to Illustrates Use of Static Inner Class // Outer class public class GFG { // Static string message static String msg = "GeeksForGeeks"; // Static Inner Class static class InnerClass { // Static Inner Class Method public void display() { // Display message in inner class System.out.println("Welcome to " + msg); } } // Main driver method public static void main(String[] args) { // Creating an instance of the outer class Gfg.InnerClass instance = new Gfg.InnerClass(); // Calling method of static inner class through // the outer class instance variable instance.display(); } }
Producción:
Welcome to GeeksForGeeks
Publicación traducida automáticamente
Artículo escrito por aditya_taparia y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA