Está en la página 1de 12

Lenguaje de

programación III
Tema 02
Clases y Objetos

Lic. Luis Ernesto Díaz Beteta


Contenido

• Clases
• Constructores
• Constructor por omisión
• Constructor con parámetros
• Puntero implícito this
• Propiedades
• Ejemplo
Clase
• Tipo abstracto de datos «TAD» defino por el
usuario
• Una clase describe los objetos que van a tener
la misma estructura y el mismo
comportamiento.
• Los servicios proporcionados por una clase
• Son operaciones disponibles sobre las
instancias de la clase
• Todo lo que el objeto puede hacer, esta
definido por sus operaciones
Clase en C#
class CPunto{
private float x;
private float y;

public void setX(float x) {this.x = x;}


public void setY(float y) {this.y = y;}
public float getX() { return this.x; }
public float getY() { return this.y; }
}

Si no se especifica el
modificador de acceso , se
asume como privado
Instancia de la clase
static void Main(string[] args){
CPunto punto = new CPunto();
punto.setX(0);
punto.setY(0);

System.Console.WriteLine("\nX: " + punto.getX());


System.Console.WriteLine("\nX: " + punto.getY());

System.Console.Read();
}

Llamada al Instancia de la clase CPunto


constructor de la
clase
Constructores
Es una función miembro de la clase que aglutina un conjunto
de instrucciones que permiten inicializar la memoria asociada
a los objetos de la clase

• Tiene en mismo nombre que la clase


• Pueden aceptar parámetros
• Se puede declarar más de un constructor para una misma
clase pero con diferentes argumentos.
• No devuelven ningún valor (ni void)
• No se heredan
Constructor por omisión
Constructor sin parámetros y se invoca al definir una
instancia de la clase.
class CPunto{
private float x;
private float y;

public CPunto() {
this.setX(0); Constructo por omisión
this.setY(0);
}

public void setX(float x) {this.x = x;}


public void setY(float y) {this.y = y;}
public float getX() { return this.x; }
public float getY() { return this.y; }
}
Constructor con argumentos
Crea objetos con los valores recibidos al momento
de su instanciación.
class CPunto{
private float x;
private float y;

public CPunto() {
this.setX(0);
this.setY(0); CPunto punto = new CPunto(2,4);
}

public CPunto(float x, float y) {


this.setX(x);
this.setY(y);
}
//...
}
El puntero implícito this
Una ...
copia public void setX(float x) ...
public void setY(float y) ...
...
 this, almacena la
referencia al objeto
punto1 punto2 punto2
que le realizo la X: 0 X: 5.2 X: 2.5
llamada al método. Y: 0 Y: 2.5 Y: 5.2

this punto1.setX(2.3);
punto2.setX(3.2);
punto3.setX(6.3);

9
PROPIEDADES
Permiten establecer y obtener valores a los atributos de la
clase, sin necesidad de los métodos get y set.
class CPunto{
private float x;
private float y;

public CPunto() {
X = x;
Y = y;
} System.Console.WriteLine("\nX: " + punto.X);
System.Console.WriteLine("\nX: " +
//... punto.Y);

public float X {
set { x = value; }
get { return x; }
}

//...
}
Ejemplo

11
Muchisimas
Gracias

También podría gustarte