Vous êtes sur la page 1sur 16

Abstraccin/Mtodo

Programacin II
Luis Martnez
13-0219
Concepto
Operacin intelectual que ignora selectivamente partes de
un todo para facilitar su comprensin.
"Qu hace?" "Cmo lo hace?"
Capacidad de separar los elementos (al menos
mentalmente) para poder verlos de forma singular. Como
cuando describimos el cuerpo humano y decimos cabeza,
brazo(s), pierna(s), etc.
Tipos de abstraccin
Abstraccin Procedimental: Definimos un conjunto de
operaciones (procedimiento) que se comporta como una
operacin.

Abstraccin de Datos (TDA): Tenemos un conjunto de
datos y un conjunto de operaciones que caracterizan el
comportamiento del conjunto. Las
operaciones estn vinculadas a los datos del tipo.
Abstraccin de Iteracin: Abstraccin que permite
trabajar sobre colecciones de objetos sin tener que
preocuparse por la forma concreta en que se organizan.
Usos
Representar las caractersticas esenciales de un objeto sin
preocuparnos de las restantes caractersticas (no esenciales)
Se centra en la vista externa de un objeto
Separar el comportamiento esencial de un objeto de su
implementacin
Una clase diferente puede manipular otra clase sin tener en
cuenta sus propiedades ni mtodos ya que solo le interesa,
calcular algo interno sin necesitar otra informacin
relacionada de esa clase.
Ejemplos
1) Q: Qu caractersticas podemos abstraer de los automviles? o
Qu caractersticas semejantes tienen todos los automviles?

A: Caractersticas: Marca, Modelo, Nmero de chasis, Peso llantas o
cauchos, Puertas, Ventanas... Comportamiento: Acelerar, Frenar,
Retroceder...
2) La gerencia de un taller mecnico necesita un sistema para
controlar los vehculos que ingresan a sus instalaciones. En este
caso, las caractersticas esenciales de la clase vehculo son:
Marca, Modelo, Color, Falla detectada, Nombre del Propietario,
Direccin del Propietario, Telfono del Propietario...
Abstraccin: aves
Java

public class Aves{

private String pico;
private int alas;
private int plumas;
private int patas;

private void Volar() {}
private void Detenerse() {}
}
C#
namespace ConsoleApplication1
{
class Aves
{
private String pico;
private int alas;
private int plumas;
private int patas;

private void Volar() { }
private void Detenerse()
{ }

}
}
Clases abstractas
Permiten crear mtodo generales, que recrean un
comportamiento comn, pero sin especificar cmo lo hacen.
Si una clases contiene uno o ms mtodos abstractos est clase
debe ser abstracta.
Las clases que hereden de la clase Abstracta deben implementar
todos los mtodos abstractos.
Se debe tener presente que las clases abstractas s pueden
heredar de otras clases.
La firma o parmetros de los mtodos as como el tipo de dato
deben respetarse, de lo contrario se est hablando de otro
mtodo totalmente diferente.
Clase abstracta Figura
Java
public abstract class Figura
{

public int numeroLados;
public int area;
public int volumen;

abstract public void
calcularArea();
abstract public void
calcularVolumen();

}

C#
abstract class Figura {
public int numeroLados;
public int area;
public int volumen;

abstract public void
calcularArea();
abstract public void
calcularVolumen();

}


Mtodos
Programacin II
Concepto
Algoritmo asociado a un objeto (o a una clase de objetos), cuya
ejecucin se desencadena tras la recepcin de un mensaje.
Conjunto de instrucciones a las que se les asocia un nombre de
modo que si se desea ejecutarlas, slo basta o referenciarlas a
travs de dicho nombre en vez de tener que escribirlas.
Los mtodos o funciones miembro se definen dentro de la clase a
la que pertenecen y constituyen la interfaz o forma de acceder a
la estructura interna de los objetos es decir a los datos privados.

Los mtodos definen cual son las operaciones que se pueden
realizar con los atributos de los objetos de la clase.
Sintaxis
[modificadores] tipo nombreMtodo ([ Tipo1 Parmetro1, Tipo2 Parmetro2, ...])
//Declaracin o cabecera del mtodo
{

Definicin de variables locales; //Slo accesibles desde la funcin

Sentencias; // Cuerpo del mtodo.

[return [(] expresin [)]]; // Puede no ser la ltima y puede aparecer ms de una
vez en la funcin.
}
Declaracin o cabecera
Modo de acceso: public, package, protected, private.
Tipo del valor de retorno: int, void, String, double, etc
Nombre: metodoCamello, ej. calcularPerimetro, pintar, etc
Parmetros: variables que se reciben desde donde se le llama.
Cuerpo del mtodo
Instrucciones necesarias para realizar determinada tarea.
Definicin de variables locales.
Return: devuelve el control de la ejecucin al mtodo que hizo
la llamada.
String local = "Solo se lee desde el metodo";
local = "Hola";
local = local + " Mundo";
Console.WriteLine(local);

return true;
Mtodo clase o static
tipoacceso static tipovalor nombreMetodo() {}

Llamada a un mtodo
nombreObjeto.nombreMtodo([lista de argumentos])


Getters / Setters
Java
public Class Estudiante
{
private String nombre;

public String getNombre()
{
return nombre;
}
public void setNombre(String nombre)
{
this.nombre = nombre;
}
}
public Class Principal
{
public static void main(String args[])
{
Estudiante e1 = new Estudiante();
e1.setNombre(Carlos);
System.out.println(e1.getNombre());

}
C#
class Program
{
private static String
nombrePerro;
public static String elNombre {
get {
return nombrePerro;
}

set {
nombrePerro = value;
}
}


static void Main(string[] args)
{
// Instanciar objeto
elNombre = "Dog";

Console.WriteLine(elNombre);

Console.ReadLine();
}
}
Referencias
Abstraccin en programacin. Disponible en: decsai.ugr.es/~jfv/abs.pdf
Abstraccin y encapsulamiento. Wikibooks.org. Disponible en:
http://es.wikibooks.org/wiki/Fundamentos_de_programaci%C3%B3n/L
a_Abstracci%C3%B3n_y_el_Encapsulamiento
Abstraccin (informtica). Wikipedia.org. Disponible en:
http://es.wikipedia.org/wiki/Abstracci%C3%B3n_(inform%C3%A1tica)
Clases abstractas. Emartini.Wordpress.com. Disponible en:
http://emartini.wordpress.com/2008/09/17/poo-clases-abstractas-
interfaces-y-herencia-multiple/
La abstraccin en POO. Alvenfur. Disponible en:
http://alvenfur.blogspot.com/2009/05/la-abstraccion-en-poo.html
POO (METODOS). Disponible en:
http://gencervel.wordpress.com/2008/04/29/programacion-orientada-
a-objetos-metodos/
POO: Mtodos. Disponible en:
http://www.slideshare.net/e1da4/mtodos-poo
Mtodos de POO. Disponible en:
http://centros5.pntic.mec.es/ies.galileo/pilar/metodos.html

Vous aimerez peut-être aussi