Red de conocimiento informático - Consumibles informáticos - ¿Ideas de programación orientada a objetos?

¿Ideas de programación orientada a objetos?

Encapsulación:

1. Definición: Ocultar las propiedades y los detalles de implementación del objeto, exponer solo la interfaz al mundo exterior y controlar el nivel de acceso para leer y modificar propiedades en el programa.

2. El propósito de la encapsulación es mejorar la seguridad y simplificar la programación. Los usuarios no necesitan conocer los detalles de implementación específicos, solo necesitan usar los miembros de la clase a través de una interfaz externa y un acceso específico. permiso.

3. Los requisitos básicos para la encapsulación son: privatizar todas las propiedades y proporcionar métodos getter y setter para cada propiedad. Si hay un constructor con parámetros, entonces debe escribir un constructor sin parámetros. Durante el desarrollo, a menudo es necesario probar las clases que se han escrito, por lo que a veces se anula el método toString, pero esto no es necesario.

Herencia:

1. Propósito: Lograr la reutilización del código.

2. Introducción: Cuando dos clases tienen las mismas características (propiedades) y comportamientos (métodos), las mismas partes se pueden extraer y colocar en una clase como clase principal, y las otras dos clases la heredan. . esta clase de padres. Después de la herencia, la subclase posee automáticamente las propiedades y métodos de la clase principal, pero es importante tener en cuenta que las propiedades privadas y los constructores de la clase principal no se pueden heredar. Además, las subclases pueden escribir sus propios atributos y métodos únicos para ampliar la funcionalidad. Las subclases también pueden anular los métodos de la clase principal, es decir, reescribir métodos. Las subclases no pueden heredar variables miembro y métodos con derechos de acceso privado en la clase principal. Las subclases pueden anular los métodos de la clase principal y nombrar las variables miembro con el mismo nombre que la clase principal. A veces tenemos la necesidad de ocultar algo del mundo tanto como sea posible, pero aún así permitir que los miembros de las subclases accedan a ellos. En este momento necesitas usar protected.

Polimorfismo:

1. Concepto: Lo mismo, cuando se llama al mismo método y los parámetros son los mismos, el comportamiento es diferente.

2. Hay tres condiciones necesarias para que Java alcance el polimorfismo: herencia, reescritura y transformación ascendente. Herencia: en el polimorfismo, debe haber subclases y clases principales con relaciones de herencia. Reescritura: la subclase redefine ciertos métodos en la clase principal, y cuando se llamen estos métodos, se llamarán los métodos de la subclase. Transformación ascendente: en el polimorfismo, la referencia de la subclase debe asignarse al objeto de la clase principal. Solo así la referencia puede tener la capacidad de llamar a los métodos de la clase principal y a los métodos de la subclase.

Solo cuando se cumplen las tres condiciones anteriores, podemos utilizar un código de implementación de lógica unificada para procesar diferentes objetos en la misma estructura de herencia, a fin de realizar diferentes comportamientos.

3. Cómo implementar el polimorfismo:

(1) Polimorfismo basado en la herencia

El mecanismo de implementación basado en la herencia se refleja principalmente en la clase principal y la herencia. Una o más subclases de la clase principal anulan ciertos métodos y varias subclases pueden exhibir comportamientos diferentes al anular el mismo método.

(2) Polimorfismo basado en la implementación de la interfaz

La herencia se refleja reescribiendo varias subclases diferentes del mismo método de la clase principal, luego se puede lograr implementando la interfaz y cubriendo el mismo método en la interfaz se refleja en varias clases diferentes.

En el polimorfismo de la interfaz, la referencia que apunta a la interfaz debe ser un programa de instancia que especifica una clase que implementa la interfaz. En tiempo de ejecución, el método correspondiente se ejecuta de acuerdo con el tipo real del objeto. referencia.

La herencia es una herencia única, que solo puede proporcionar una interfaz de servicio consistente para un grupo de clases relacionadas. Sin embargo, las interfaces pueden tener múltiples herencias y múltiples implementaciones. La capacitación en TI cree que puede usar un conjunto de interfaces relacionadas o no relacionadas para combinarse y expandirse, y puede proporcionar interfaces de servicios consistentes al mundo exterior. Por tanto, tiene mayor flexibilidad que la herencia.