Al definir una clase, se define un plan para un tipo de datos. Esto no define realmente ningún dato, pero sí define lo que significa la denominación de clase. Es decir, qué es el objeto de la clase y qué operaciones se pueden realizar sobre este objeto. Los objetos son instancias de una clase. Los métodos y variables que componen una clase se denominan miembros de la clase.

    Definir una clase

    Una definición de clase comienza con la clase de palabras clave seguida del nombre de la clase; y el cuerpo de la clase rodeado por un par de llaves. Aquí está la forma general de una definición de clase:

    Nota:

    Los especificadores de acceso especifican las reglas de acceso para los miembros y la propia clase. Si no se menciona, el especificador de acceso por defecto para una categoría de clase es interno (interno). El acceso por defecto para los miembros es privado.

    El tipo de datos especifica el tipo de variable y el tipo de retorno especifica el tipo de datos de los datos que el método devuelve, si los hubiera.

    Para acceder a los miembros de la clase, se utiliza el operador de puntos (..

    El operador de punto enlaza el nombre de un objeto con el nombre de un miembro.

    El siguiente ejemplo ilustra los conceptos discutidos hasta ahora:

    Cuando el código anterior es compilado y ejecutado, produce el siguiente resultado:

    Funciones y encapsulación

    Una función de miembro de una clase es una función que tiene su definición o prototipo en la definición de la clase similar a cualquier otra variable. Se ejecuta en cualquier objeto de la clase de la que sea miembro y tiene acceso a todos los miembros de una clase para ese objeto.

    Las variables de miembro son los atributos de un objeto (desde el punto de vista del diseño) y se mantienen privadas para implementar la encapsulación. A estas variables sólo se puede acceder con las funciones de los miembros públicos.

    Pongamos los conceptos arriba para definir y obtener el valor de los diferentes miembros de la clase en una clase:

    Cuando el código anterior es compilado y ejecutado, produce el siguiente resultado:

    Volumen de la caja 1 : 210
    Volumen de Box2 : 1560

    Constructores C #

    Una clase constructora es una función de un miembro especial de una clase que se ejecuta cada vez que creamos nuevos objetos de esa clase.

    Un constructor tiene exactamente el mismo nombre que el nombre de la clase y no tiene tipo de devolución. El siguiente ejemplo explica el concepto de fabricante:

    Cuando el código anterior es compilado y ejecutado, produce el siguiente resultado:

    Un constructor por defecto no tiene parámetros, pero si lo necesita, un constructor puede tener parámetros. Estos constructores son llamados constructores parametrizados. Esta técnica le ayuda a asignar el valor inicial a un objeto cuando se crea, como se muestra en el siguiente ejemplo:

    Cuando el código anterior es compilado y ejecutado, produce el siguiente resultado:

    C # Destructores

    Un destructor es una función especial de un miembro de una clase que se ejecuta cada vez que un objeto de su clase abandona el ámbito de aplicación. Un destructor tiene exactamente el mismo nombre que el nombre de la clase con una tilde prefijada (~) y no puede devolver un valor ni tomar parámetros.

    Destructor puede ser muy útil para liberar recursos de memoria antes de salir del programa. Los destructores no pueden ser heredados o sobrecargados.

    El siguiente ejemplo explica el concepto de destructor:

    Cuando el código anterior es compilado y ejecutado, produce el siguiente resultado:

    Miembros estáticos de una clase C #

    Podemos definir a los miembros de la clase como estáticos usando la palabra clave estática. Cuando declaramos a un miembro de una clase como estático, significa que no importa cuántos objetos se creen en la clase, sólo hay una copia del miembro estático.

    La palabra clave estática implica que sólo existe una instancia del miembro para una clase. Las variables estáticas se utilizan para definir constantes porque sus valores pueden ser recuperados invocando la clase sin crear una instancia de la misma. Las variables estáticas pueden ser inicializadas fuera de la función de miembro o de la definición de clase. También puede inicializar las variables estáticas en la definición de la clase.

    El siguiente ejemplo muestra el uso de variables estáticas:

    Cuando el código anterior es compilado y ejecutado, produce el siguiente resultado:

    Número variable para s1: 6
    Número variable para s2: 6

    También puede declarar una función de miembro como estática. Estas funciones sólo pueden acceder a variables estáticas. Las funciones estáticas existen incluso antes de que se cree el objeto. El siguiente ejemplo ilustra el uso de funciones estáticas:

    Cuando el código anterior es compilado y ejecutado, produce el siguiente resultado:

    Otros consejos interesantes:

    1. La Sintaxis Básica de C # C # C # C # es un lenguaje de programación orientado a objetos. En la metodología de programación orientada a objetos, un programa consiste en diferentes objetos que interactúan entre sí a través de acciones. Las acciones que uno……
    2. Las variables en C # Una variable es sólo un nombre dado a un área de almacenamiento que nuestros programas pueden manipular. Cada variable en C # tiene un tipo específico, que determina el tamaño y la disposición de la memoria……
    3. Polimorfismo en C++ Antes de profundizar en este capítulo, es necesario tener una buena comprensión de los indicadores y la herencia de clase. Si no está realmente seguro de lo que significa una de las siguientes expresiones, debería……
    4. Las clases en C++ Las clases son un concepto extendido de estructuras de datos: al igual que las estructuras de datos, pueden contener miembros de datos, pero también pueden contener funciones como miembros. Un objeto……
    5. Clases en C++ (2) Las clases, esencialmente, definen los nuevos tipos que se utilizarán en el código C++. Y los tipos C++ no sólo interactúan con el código por medio de construcciones y asignaciones. También interactúan…..