"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > Modificadores de acceso al lenguaje Java

Modificadores de acceso al lenguaje Java

Publicado el 2024-09-01
Navegar:600

Modificadores de acesso da linguagem Java

Tipos de modificadores:

  • público: Permite el acceso a miembros de una clase mediante cualquier código de programa, incluidos métodos de otras clases.
  • privado: Restringe el acceso de los miembros dentro de la propia clase, evitando que los métodos de otras clases accedan a ellos directamente.
  • protected: Usado en herencia, se tratará en el Capítulo 8.
  • Acceso predeterminado: Si no se utiliza ningún modificador, el acceso es igual que público, excepto en los casos que involucran paquetes.

Ejemplos de modificadores:
Ejemplos de cómo utilizar público y privado en declaraciones de miembros:

  • mensaje de error de cadena pública;
  • cuenta privadaBalance de saldo;
  • isError booleano privado (estado del byte) { // ... }

Demostración práctica:
Control de acceso en una clase:

  • Solo se puede acceder a los miembros privados, como alfa en MyClass, mediante métodos de la propia clase.
  • Acceso a miembros privados mediante métodos públicos a través de métodos de acceso (getAlpha() y setAlpha()).
  • Los intentos de acceder directamente a miembros privados de otra clase darán lugar a un error de compilación.
class MyClass {
    private int alpha; // acesso privado
    public int beta;   // acesso público
    int gamma;         // acesso padrão (equivalente a public neste contexto)

    // Métodos para acessar alpha
    void setAlpha(int a) {
        alpha = a;
    }

    int getAlpha() {
        return alpha;
    }
}

Ejemplo de uso: Class AccessDemo.java

Resultado:

  • El acceso al miembro privado alfa solo se puede realizar a través de los métodos públicos setAlpha() y getAlpha().
  • El acceso directo a alfa fuera de la clase MyClass está prohibido, lo que genera un error de compilación.

Ejemplo: FailSoftArray:

  • Implementa una matriz "resistente a fallas", donde la matriz está encapsulada como un miembro privado, al que se accede únicamente mediante métodos públicos.
  • Encapsulación: Protege la matriz del acceso fuera de límites, evitando excepciones en tiempo de ejecución.
  • Miembros privados: a, errval e indexOK() son privados y protegen la integridad de la matriz.
  • Miembro público: la longitud es pública, lo que permite consultar el tamaño de la matriz, similar a la implementación de matrices estándar en Java.
  • Métodos públicos: put() y get() se utilizan para almacenar y recuperar valores del array, controlando el acceso de forma segura.

Conclusión:
El control de acceso es fundamental para una programación orientada a objetos exitosa, especialmente cuando se trata de herencia y garantizar la integridad de los datos.

Resultado:
La matriz "resistente a fallas" evita errores de tiempo de ejecución al intentar acceder a índices fuera de límites.
El acceso a los elementos de la matriz se realiza de forma segura a través de los métodos públicos get() y put(), con verificación de límites.
El programa muestra fallas silenciosas y luego las maneja explícitamente, mostrando cuándo los índices están fuera de los límites.
Estos ejemplos ilustran cómo se aplican los modificadores de acceso de Java (público, privado y acceso predeterminado) para controlar el acceso a los miembros de una clase y garantizar la integridad y seguridad de los datos.

Declaración de liberación Este artículo se reproduce en: https://dev.to/devsjavagirls/modificadores-de-acesso-da-linguagem-java-41?1 Si hay alguna infracción, comuníquese con [email protected] para eliminarla.
Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3