Clases Y Objetos

  • October 2019
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Clases Y Objetos as PDF for free.

More details

  • Words: 1,290
  • Pages: 23
ICIN 051 Programación de Computadores Semestre 01/2006 Oscar Mapocho Salazar Cerna [email protected]

Clase 10: Clases y Objetos

Instituto de Computación - Universidad Austral de Chile - Campus Puerto Montt

¿Qué es una clase? 







Conjunto de individuos que tienen una propiedad común que les diferencia de todos los demás Los “individuos” pertenecen o no pertenecen a la clase Es una representación abstracta de un objeto ¿Qué?

Material para módulo “ICIN 051 – Programación de Computadores” Departamento de Ingeniería Industrial - Universidad Austral de Chile – Campus Puerto Montt

Más “sencillo”  



Una clase es un contenedor De uno o más datos (variables o propiedades miembro) Junto a las operaciones de manipulación de dichos datos (funciones/métodos)

Material para módulo “ICIN 051 – Programación de Computadores” Departamento de Ingeniería Industrial - Universidad Austral de Chile – Campus Puerto Montt

¿Cómo se define una clase? class Nombre { // Variables miembro (habitualmente privadas) miembro_1; //lista de miembros miembro_2; miembro_3; // Funciones o métodos (habitualmente públicas) funcion_miembro_1( ); funcion_miembro_2 ( );

}

Material para módulo “ICIN 051 – Programación de Computadores” Departamento de Ingeniería Industrial - Universidad Austral de Chile – Campus Puerto Montt

¿Y de qué se componen? 

Atributos o variables de instancia   

Son características de los objetos Se debe especificar si nombre y su tipo Pueden ser:  

Públicas: Todos pueden acceder a ellas Privadas: Sólo dentro de la clase se puede acceder a ella

Material para módulo “ICIN 051 – Programación de Computadores” Departamento de Ingeniería Industrial - Universidad Austral de Chile – Campus Puerto Montt

¿Y de qué se componen? 

Métodos en las clases (funciones o procedimientos)  







Implementan la funcionalidad asociada al objeto Son el equivalente a las funciones en los lenguajes estructurados Se diferencian de ellos en que es posible acceder a las variables de la clase de forma implícita

Cuando se desea realizar una acción sobre un objeto, se dice que se le manda un mensaje invocando a un método que realizará la acción Habitualmente, los métodos suelen ser verbos

Material para módulo “ICIN 051 – Programación de Computadores” Departamento de Ingeniería Industrial - Universidad Austral de Chile – Campus Puerto Montt

Ejemplos class Casa { decimal Altura; decimal Ancho; decimal Profundidad; string Color; void Entrar(); void Salir(); } Material para módulo “ICIN 051 – Programación de Computadores” Departamento de Ingeniería Industrial - Universidad Austral de Chile – Campus Puerto Montt

Ejemplos class Punto { float x, y; void Set(); float GetX(); float GetY(); float GetRadio(); }

Material para módulo “ICIN 051 – Programación de Computadores” Departamento de Ingeniería Industrial - Universidad Austral de Chile – Campus Puerto Montt

Ejemplos class Cuadrado { Punto p1, p2; void Set(); float GetP1(); float GetP2(); float GetArea(); }

Material para módulo “ICIN 051 – Programación de Computadores” Departamento de Ingeniería Industrial - Universidad Austral de Chile – Campus Puerto Montt

Ejemplos class Circulo { Punto p; float radio; void Set(); float GetPunto(); float GetArea(); }

Material para módulo “ICIN 051 – Programación de Computadores” Departamento de Ingeniería Industrial - Universidad Austral de Chile – Campus Puerto Montt

¿Qué son los objetos?   



Instancias de clases ¿Qué? Son variables que tienen como tipo alguna clase Se declaran igual que las variables: 



nombre_clase nombre_objeto;

Se instancian: 

nombre_objeto= new nombre_clase();

Material para módulo “ICIN 051 – Programación de Computadores” Departamento de Ingeniería Industrial - Universidad Austral de Chile – Campus Puerto Montt

Ejemplos using System; using System.Collections.Generic; using clases_utiles; namespace ejemplos_clases { class MainClass { public static void Main(string[] args) { Punto mi_punto; // Declaro mi objeto mi_punto= new Punto( 3, 4); // Lo instancio } } } Material para módulo “ICIN 051 – Programación de Computadores” Departamento de Ingeniería Industrial - Universidad Austral de Chile – Campus Puerto Montt

Métodos 

   

Trozos de código que se pueden llamar muchas veces Devuelven algo (de algún tipo) Reciben parámetros Dividir para reinar Sintaxis: 



tipo_datos nombre_metodo (parametros …)

Concepto de firma

Material para módulo “ICIN 051 – Programación de Computadores” Departamento de Ingeniería Industrial - Universidad Austral de Chile – Campus Puerto Montt

Métodos 

Devuelven algo   



Nada: void Un tipo de datos conocido Una clase

Hay una clase que debe existir siempre para programas:  

MainClass Y debe tener siempre el método: 

public static void Main(string[] args)

Material para módulo “ICIN 051 – Programación de Computadores” Departamento de Ingeniería Industrial - Universidad Austral de Chile – Campus Puerto Montt

Ejemplos public class Punto { public double x, y; public void Set(double variable_x, double variable_y) { this.x= variable_x; this.y= variable_y; } public double Pitagoras() { return( Math.Sqrt(Math.Pow(this.x,2) + Math.Pow(this.y,2)); } }

Material para módulo “ICIN 051 – Programación de Computadores” Departamento de Ingeniería Industrial - Universidad Austral de Chile – Campus Puerto Montt

Ejercicios 

Construir una clase que provea un mecanismo para manejar un rectángulo, además de las herramientas para poder calcular:   

El perímetro El área Ver si un punto está en su interior

Material para módulo “ICIN 051 – Programación de Computadores” Departamento de Ingeniería Industrial - Universidad Austral de Chile – Campus Puerto Montt

Privacidad en las Clases 

Una variable o método, que pertenece a una clase, puede ser: 





Privado (private): Sólo pueden acceder a él los métodos de la misma clase Público (public): Pueden acceder a él todos los métodos externos a la clase original Protegido (protected): Pueden acceder a él los métodos de “clases hijas”

Material para módulo “ICIN 051 – Programación de Computadores” Departamento de Ingeniería Industrial - Universidad Austral de Chile – Campus Puerto Montt

Ejercicio Números Complejos 



Proveer una clase para manejar números complejos definidos como a+bi Métodos:   

Set Imprimir Sumar 



Se obtiene sumando respectivamente las partes reales e imaginarias de los complejos dados.

Multiplicar 

El resultado es otro complejo que se obtiene multiplicando cada una de las partes de uno de los complejos por las otras partes del otro complejo recordando que i2 = -1

Material para módulo “ICIN 051 – Programación de Computadores” Departamento de Ingeniería Industrial - Universidad Austral de Chile – Campus Puerto Montt

Ejercicios Fecha Chilena 



Proveer una clase que permita implementar una fecha en formato chileno: dd/mm/aaaa Métodos:      

Set Imprimir( formato) SumarDias( dias) EsMenor( fecha) EsMenorIgual (fecha) DiaDeLaSemana()

Material para módulo “ICIN 051 – Programación de Computadores” Departamento de Ingeniería Industrial - Universidad Austral de Chile – Campus Puerto Montt

Ejercicios Hora 



Proveer una clase que permita implementar una hora: hh:mm:ss Métodos:      

Set Imprimir( formato) Decimal() SumarHoras( horas) EsMenor( hora) EsMenorIgual ( hora)

Material para módulo “ICIN 051 – Programación de Computadores” Departamento de Ingeniería Industrial - Universidad Austral de Chile – Campus Puerto Montt

Ejercicios Graficar Polinomios 



Proveer una clase que permita graficar polinomios Métodos:     

SetGrado(n) SetCoeficiente(i) GetF(x) GraficarF(x1, x2) Imprimir()

Material para módulo “ICIN 051 – Programación de Computadores” Departamento de Ingeniería Industrial - Universidad Austral de Chile – Campus Puerto Montt

Ejercicios El Gato 



Proveer una clase que permita jugar Gato entre 2 jugadores Métodos:   

Vaciar JugarEn AlguienGano

Material para módulo “ICIN 051 – Programación de Computadores” Departamento de Ingeniería Industrial - Universidad Austral de Chile – Campus Puerto Montt

Ejercicios El Banco 

 

Proveer una clase que permita manejar una cuenta corriente (simple) de un banco. Usar otra clase: Movimiento Métodos:   

Set Abonar Retirar

Material para módulo “ICIN 051 – Programación de Computadores” Departamento de Ingeniería Industrial - Universidad Austral de Chile – Campus Puerto Montt

Related Documents

Clases Y Objetos
May 2020 9
Clases Y Objetos
October 2019 15
Clases Y Objetos
June 2020 11
Clases Y ..
July 2020 9