Clase y objeto de C#
Clase y objeto C#
En este tutorial, aprenderá sobre el concepto de clases y objetos en C# con la ayuda de ejemplos.
C# es un programa orientado a objetos. En la programación orientada a objetos (POO), resolvemos problemas complejos dividiéndolos en objetos.
Para trabajar con objetos, necesitamos realizar las siguientes actividades:
- crear una clase
- crear objetos de la clase
Clase C#
Antes de aprender acerca de los objetos, necesitamos entender el funcionamiento de las clases. La clase es el plano del objeto.
Podemos pensar en la clase como un boceto (prototipo) de una casa . Contiene todos los detalles sobre los pisos, puertas, ventanas, etc. Podemos construir una casa en base a estas descripciones. Casa es el objeto.
Al igual que se pueden hacer muchas casas a partir del boceto, podemos crear muchos objetos a partir de una clase.
Crear una clase en C#
Usamos la palabra clave class para crear un objeto. Por ejemplo,
class ClassName {
}
Aquí, hemos creado una clase llamada ClassName . Una clase puede contener
- campos - variables para almacenar datos
- métodos - funciones para realizar tareas específicas
Veamos un ejemplo,
class Dog {
//field
string breed;
//method
public void bark() {
}
}
En el ejemplo anterior,
- Perro - nombre de la clase
- raza - campo
- ladrar() - método
Nota :En C#, los campos y métodos dentro de una clase se denominan miembros de una clase.
Objetos C#
Un objeto es una instancia de una clase. Supongamos que tenemos una clase Perro . Bulldog, Pastor Alemán, Pug son objetos de la clase.
Crear un objeto de una clase
En C#, así es como creamos un objeto de la clase.
ClassName obj = new ClassName();
Aquí, hemos usado el new
palabra clave para crear un objeto de la clase. Y, obj es el nombre del objeto. Ahora, vamos a crear un objeto a partir del Dog clase.
Dog bullDog = new Dog();
Ahora, el bullDog el objeto puede acceder a los campos y métodos del Dog clase.
Acceder a los miembros de la clase mediante el objeto
Usamos el nombre de los objetos junto con el .
operador para acceder a los miembros de una clase. Por ejemplo,
using System;
namespace ClassObject {
class Dog {
string breed;
public void bark() {
Console.WriteLine("Bark Bark !!");
}
static void Main(string[] args) {
// create Dog object
Dog bullDog = new Dog();
// access breed of the Dog
bullDog.breed = "Bull Dog";
Console.WriteLine(bullDog.breed);
// access method of the Dog
bullDog.bark();
Console.ReadLine();
}
}
}
Salida
Bull Dog Bark Bark !!
En el programa anterior, hemos creado un objeto llamado bullDog del Perro clase. Note que hemos usado el nombre del objeto y el .
(operador punto) para acceder a la raza campo
// access breed of the Dog
bullDog.breed = "Bull Dog";
y el ladrido() método
// access method of the Dog
bullDog.bark();
Creación de varios objetos de una clase
Podemos crear múltiples objetos de la misma clase. Por ejemplo,
using System;
namespace ClassObject {
class Employee {
string department;
static void Main(string[] args) {
// create Employee object
Employee sheeran = new Employee();
// set department for sheeran
sheeran.department = "Development";
Console.WriteLine("Sheeran: " + sheeran.department);
// create second object of Employee
Employee taylor = new Employee();
// set department for taylor
taylor.department = "Content Writing";
Console.WriteLine("Taylor: " + taylor.department);
Console.ReadLine();
}
}
}
Salida
Sheeran: Development Taylor: Content Writing
En el ejemplo anterior, hemos creado dos objetos:sheeran y taylor del Empleado clase.
Aquí puede ver que ambos objetos tienen su propia versión del departamento campo con diferentes valores.
Crear objetos en una clase diferente
En C#, también podemos crear un objeto de una clase en otra clase. Por ejemplo,
Por ejemplo,
using System;
namespace ClassObject {
class Employee {
public string name;
public void work(string work) {
Console.WriteLine("Work: " + work);
}
}
class EmployeeDrive {
static void Main(string[] args) {
// create Employee object
Employee e1= new Employee();
Console.WriteLine("Employee 1");
// set name of the Employee
e1.name="Gloria";
Console.WriteLine("Name: " + e1.name);
//call method of the Employee
e1.work("Coding");
Console.ReadLine();
}
}
}
Salida
Employee 1 Name: Gloria Work: Coding
En el ejemplo anterior, tenemos dos clases:Empleado y EmployeeDrive . Aquí, estamos creando un objeto e1 del Empleado clase en el EmployeeDrive clase.
Hemos utilizado el e1 objeto para acceder a los miembros del Empleado clase de EmployeeDrive . Esto es posible porque los miembros del Employee clase son public
.
Aquí, public
es un especificador de acceso que significa que los miembros de la clase son accesibles desde cualquier otra clase. Para obtener más información, visite Modificadores de acceso de C#.
¿Por qué objetos y clases?
Los objetos y las clases nos ayudan a dividir un proyecto grande en subproblemas más pequeños.
Suponga que desea crear un juego que tenga cientos de enemigos y cada uno de ellos tenga campos como salud , munición y métodos como shoot() y ejecutar() .
Con OOP podemos crear un único Enemigo clase con los campos y métodos obligatorios. Luego, podemos crear múltiples objetos enemigos a partir de él.
Cada uno de los objetos enemigos tendrá su propia versión de salud y munición campos. Y pueden usar el común shoot() y ejecutar() métodos.
Ahora, en lugar de pensar en proyectos en términos de variables y métodos, podemos pensar en ellos en términos de objetos.
Esto ayuda a gestionar la complejidad y a hacer que nuestro código sea reutilizable.
Lenguaje C
- Clase y método abstractos de C#
- C# Clase parcial y método parcial
- Clase y método sellados de C#
- Clases y objetos de C++
- Función amiga de C++ y Clases amigas
- Programación orientada a objetos de Python
- Objetos y clases de Java
- Clase abstracta de Java y métodos abstractos
- Clase interna y anidada de Java
- Clase única de Java
- Reflexión Java