Space Invaders Programacion Orientada a Objetos

Páginas: 11 (2623 palabras) Publicado: 13 de abril de 2014
“Space Invaders”

Práctica de la Asignatura de Programación Orientada a Objetos
Escenario para el Curso 2011/2012 – Febrero de 2012 – Versión 1.1
Departamento de Lenguajes y Sistemas Informáticos
Escuela Técnica Superior de Ingeniería Informática - UNED

1.- Introducción
Los objetivos que se plantean en la realización de esta práctica son los siguientes:
 Familiarización con laProgramación Orientada a Objetos (POO): definición de clases e
instancias, uso de la herencia, definición/uso de métodos estáticos y abstractos,
 Realización del diseño orientado a objetos de un problema.
 Implementación de un programa sencillo donde se manejen conceptos relacionados
con POO.
La práctica se va a implementar en Java 2 Estándar Edition (J2SE). El compilador de Java
que se usará seráBlueJ, tal y como se define en el programa de la asignatura. La asignatura
además dispone de un curso virtual en aLF y una dirección en Internet relativa a la práctica y
a otros aspectos de la asignatura, que es http://www.lsi.uned.es/poo.

2.- Programación Orientada a Objetos en Java
El paradigma de programación orientada a objetos define un programa como una
colección de entidades que serelacionan para resolver un problema. Estas entidades, que se
conocen genéricamente como objetos, están tienen por un conjunto de propiedades y
métodos, y están organizadas en torno a una jerarquía de clases.
En Java cada objeto puede tener variables y métodos privados y públicos. Se puede
modificar dicha visibilidad de una clase usando los modificadores de acceso a miembros. Las
dos manerasmás habituales de especificar la accesibilidad son:
private – la variable o método está disponible solamente para esta clase,
public – la variable o método está disponible para todas las clases,
Una clase puede heredar los variables y métodos públicos de otra clase a través del
mecanismo de herencia y la palabra clave extends. Por ejemplo:
//clase base que va a contener información sobrevehículos de nuestra empresa:
public vehiculo {
private int noPuertas;
private int noRuedas;
private String modelo;
public vehiculo(){}
public void setNoPuertas(int np) {
noPuertas = np;
}
//etc.
}
//una clase para tratar a los coches en general...

public coche extends vehiculo {
private
private boolean airbags;
public coche(){}
public void setAirbags(Boolean a) {
airbags = a;
}//etc.
}
//y, por fin, una clase para tratar a los coches deportivos
public final cocheDeportivo extends vehículo {
private String capacidadMotor;
private int maxVelocidad;
public cocheDeportivo(){}
public void setCapacidadMotor(String cm) {
capacidadMotor = cm;
}
//etc.
//se puede llamar a cualquier método en las superclases como
//si estuvieran dentro
//de esta misma clase, p.ej.:setNoPuertas(2);
}

Notas: Las clases que extienden otras clases tienen el nombre de subclases y las clases que
son extendidas por otras clases tienen el nombre de superclases.
Hay que tener cuidado a la hora de planificar las relaciones de herencia entre clases en
Java porque una clase solamente puede heredar variables y métodos de otra (y sus
superclases). Es decir, que no hay herenciamúltiple en Java como hay en lenguajes como C++
(aunque se puede reproducir la técnica de herencia múltiple usando interfaces…). De todas
formas, la manera más habitual para tratar está tema es simplemente usar una clase dentro de
otra, por ejemplo, si hay una clase para el aparcamiento de una empresa que ya es una
extensión de una clase base aparcamiento, dicha clase no puede heredar ninguna otraclase,
por lo tanto, se incluirán las clases de coches, camiones, motos, etc., así:
public aparcamientoEmpresa extends aparcamiento {
private String nombreEmpresa;
private cocheDirector = new cocheDeportivo(…);
public aparcamientoEmpresa(){}
//etc.
//para llamar a algún método en una clase hay que especificar
//la variable de la instancia...
cocheDirector.setCapacidadMotor(“4.5l”);...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Que es un Objeto? Programacion Orientada a Objetos
  • Programacion orientada a objetos
  • PROGRAMACIÓN ORIENTADA A OBJETOS EN C++.
  • Programacion orientada a objetos
  • ¿Que es la Programación Orientada a Objetos?
  • programacion orientada a objetos
  • Programacion orientada a objetos
  • Programación orientada a objetos

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS