Modificadores en Java

Modificadores en Java
Se utiliza un modificador en Java para definir la accesibilidad y los comportamientos de las clases, sus constructores, campos y métodos. Hay dos tipos de modificadores en Java, Access y No Access. Los modificadores de acceso definen la accesibilidad mientras los modificadores que no son de acceso informan la información de comportamiento de las clases, constructores y métodos al JVM. Este artículo proporciona una guía detallada sobre modificadores en Java con los siguientes resultados de aprendizaje:
  • Tipos de modificadores
  • Cómo funcionan los modificadores en Java

Tipos de modificadores

Esta sección considera los tipos de modificadores en detalle, además, los subtipos de cada tipo también se describen.

Modificadores de acceso

Estos modificadores son responsables de definir la accesibilidad de las clases, constructores, método, etc. Para esto, los modificadores de acceso se dividen aún más en varios subtipos.

Por defecto: Este modificador de acceso predeterminado se asigna cuando no se usa otro modificador. Se puede acceder a los miembros de una clase predeterminada dentro del paquete donde reside la clase.

Público: Este es el modificador de acceso más utilizado y común. Los métodos o miembros de datos se declaran utilizando palabras clave públicas y se puede acceder desde cualquier lugar sin ninguna restricción.

Nota: La clase principal se puede crear utilizando las palabras clave predeterminadas o públicas. Sin embargo, los métodos/constructores/atributos se pueden crear como privado, protegido, predeterminado y público

Privado: Los miembros de los datos de la clase privada se declaran utilizando palabras clave privadas y son accesibles solo dentro de la clase principal. Además, cualquier otro método de cualquier otra clase no puede acceder a los miembros de la clase privada. Como la clase principal no puede declararse utilizando una palabra clave privada, por lo tanto, las clases o métodos anidados practican la palabra clave privada.

Protegido: Se puede acceder a los miembros de un paquete con un modificador de acceso protegido dentro del mismo paquete de la misma subclase.

Modificadores sin acceso

El JVM usa estos modificadores para averiguar cómo se comportan las clases. Se pueden usar los siguientes tipos de modificadores que no son de acceso:

Final: Los modificadores finales que no son de acceso se usan con las clases para restringir su herencia. La palabra clave final se usa con las clases para definir su comportamiento no heredado y JVM no permite que ninguna subclase extienda este tipo de clase. Del mismo modo, los métodos y variables también se pueden usar con los modificadores finales que no son de acceso para restringir su comportamiento.

Abstracto: Las clases abstractas solo son heredadas no instanciadas. El propósito principal de las clases abstractas es extenderlas para hacer uso de estas clases. Además, los métodos abstractos también son como las clases abstractas, se declaran en una superclase, pero se instancian en la subclase al momento de extender la subclase.

Nota: Las palabras clave finales y abstractas se pueden usar para definir la clase principal. Los métodos y atributos se pueden definir utilizando los modificadores sin acceso como estáticos, transitorios, sincronizados.

  • Sincronizado: El concepto de sincronización entra en acción donde se ejecutan múltiples programas para minimizar el consumo de recursos. El modificador sin acceso sincronizado ayuda a restringir un método para acceder mediante múltiples subprocesos. Este modificador sin acceso solo es aplicable a los métodos.
  • Estático: Este modificador que no es de acceso es aplicable a las clases internos, variables, métodos. En las clases estáticas, las variables están asociadas con la clase, y cualquier cambio a variables se distribuye a todos los objetos. Además, los métodos estáticos pueden acceder a variables estáticas u otros métodos estáticos de la misma clase.
  • Nativo: La palabra clave nativa se utiliza para identificar que el método se implementa en código nativo utilizando la interfaz nativa de Java. Por lo general, los métodos implementados en C/C ++ se consideran como los métodos nativos.
  • Transitorio: El modificador transitorio sin acceso se usa con los nombres de clases y se practica para obtener la recepción de datos a través de la red. La palabra clave transitoria se usa con los nombres de clase y si la clase es transitoria, los miembros de los datos no necesitan transitorios. Tendría que usar palabras clave transitorias con el miembro de datos que no necesita serialización.
  • StrictFP: Significa un punto flotante estricto y restringe los cálculos de punto flotante para garantizar que el resultado sea el mismo en varias plataformas. Los cálculos de punto flotante dependen de la plataforma y devuelven diferentes resultados en varias plataformas.

Conclusión

Los modificadores en Java pueden ser de acceso o tipo de acceso sin acceso. Los miembros de los datos y los métodos de una clase se hacen accesibles mediante modificadores de acceso. Mientras que los modificadores que no son de acceso notifican a JVM sobre el comportamiento de los miembros de los datos/métodos de una clase. Esta publicación informativa describe el acceso y los modificadores no accesorios junto con sus tipos/subtipos en Java. Después de pasar por esta publicación, habría aprendido a elegir los modificadores apropiados para los miembros de su clase en Java.