Está en la página 1de 28

Programación

Orientada a
Objetos
Unidad 2
Clases y Objetos

2
2.1 Definición de una clase
Una clase en OOP, proporciona una especie de plantilla o molde
para los objetos.

Ejemplo:
Lo podemos comparar con un molde para hacer paletas de hielo, en este
ejemplo los objetos que se crean son las paletas, las cuales van a tener
como atributos (características), su color, tamaño, sabor, etc. y como
acciones o métodos que se pueden congelar, derretir, etc.

Cuando se define una clase se especifica como serán los


objetos de dicha clase, esto quiere decir, de que variables y
de que métodos estará constituida.
2.2 Declaración de clases en Java
2.2 Declaración de clases en Java
2.2 Declaración de clases en Java
2.2 Declaración de clases en Java
2.2 Declaración de clases en Java
2.3 Miembros de una clase
Los miembros de una clase son un conjunto de elementos que definen a
los objetos (atributos o propiedades), así como los comportamientos o
funciones (métodos) que maneja el objeto.

Entonces tenemos que una clase es la


estructura de un objeto, es decir, la
definición de todos los elementos de que
está hecho un objeto.

9
2.3 Miembros de una clase

10
2.3 Miembros de una clase
Ejemplo de la declaración de Atributos:

11
2.3 Miembros de una clase

12
2.3 Miembros de una clase

13
2.3 Miembros de una clase

14
2.3 Miembros de una clase

15
Ejercicio 2.1
El alumno de manera individual elaborará un programa que integre el
ejemplo presentado en la diapositiva anterior de tal forma que emita los
siguientes resultados de salida:

La matrícula del Vehículo es: 4050 ABJ


La marca del Vehículo es: VW
El modelo del Vehículo es: GTI
El color del Vehículo es: Blanco
La tarifa del Vehículo es: 100.0

Y si el atributo disponible es verdadero deberá enviar el


siguiente mensaje:
El vehículo esta disponible
De lo contrario debe imprimir:
El vehículo no esta disponible
16
Solución del ejercicio 2.1
package vehiculo; public static void main(String[] args) {
Vehiculo vehiculo1 = new Vehiculo("4050 ABJ", "VW",
public class Vehiculo { "GTI", "Blanco", 100.0, true);
String matricula; System.out.println("La matrícula del Vehículo es: " +
String marca; vehiculo1.matricula);
String modelo; System.out.println("La marca del Vehículo es: " +
String color; vehiculo1.marca);
double tarifa; System.out.println("El modelo del Vehículo es: " +
boolean disponible; vehiculo1.modelo);
System.out.println("El color del Vehículo es: " +
public Vehiculo(String matricula, String vehiculo1.color);
marca, String modelo, String color, double System.out.println("La tarifa del Vehículo es: " +
tarifa, boolean disponible) { vehiculo1.tarifa);
this.matricula = matricula; if (vehiculo1.disponible)
this.modelo = modelo; System.out.println("El vehículo esta disponible");
this.color = color; else
this.tarifa = tarifa; System.out.println("El vehículo esta ocupado");
this.disponible = disponible; }
} }
17
2.4 Ámbito referente a una clase

Los atributos se guardan en variables denominadas de instancia, y cada


objeto particular puede tener valores distintos para estas variables.
Las variables de instancia también denominados miembros dato, son
declaradas en la clase pero sus valores son fijados y cambiados en el
objeto.

En programación orientada a objetos, una variable de


instancia o miembro de dato es una variable que se
relaciona con una única instancia de una clase.
18
2.4 Ámbito referente a una clase

Una clase actúa como cualquier otro tipo de dato con


respecto al ámbito.
Todos los miembros de una clase se dice que están en el
ámbito de esa clase.
Ámbito (a que se refiere)
Cualquier miembro de una clase puede referenciar a Es el que describir al contorno o
cualquier otro miembro de la misma clase. límite perimetral de un sitio,
lugar, espacio o territorio.
Las funciones miembros de una clase tienen acceso no
restringido a los miembros dato de esa clase.
El acceso a los miembros dato y funciones de una clase
fuera del ámbito de la clase está controlado por el
programador.
2.4 Ámbito referente a una clase
Variable de instancia o miembro de dato

Las variables de instancia almacenan los datos para las instancias individuales de una clase.
Por ejemplo, en la clase "Helper", la siguiente variable de instancia podría ser declarada:
private String myName;
Esto normalmente aparece antes del método constructor, que puede crear una instancia de
la siguiente manera:
public Helper(String helperName) {
myName = helperName;
}
Es una práctica común asegurar que todas las variables de instancia tengan asignado un valor en el
momento en el que método constructor haya terminado de ejecutarse. Las variables de instancia se
declaran con visibilidad privada, lo que significa que sus valores sólo pueden cambiarse dentro de la
clase.

20
2.4 Ámbito referente a una clase

Por convención, se declaran primero las variables (atributos) miembro de la clase y luego las
declaraciones e implementaciones de métodos.
http://fcqi.tij.uabc.mx/usuarios/palacios/java4.pdf 21
2.4 Ámbito referente a una clase

Al diseñar una clase en java es conveniente tomar en cuenta lo siguiente:

• En Java no existen variables ni métodos globales. Todas las variables y


métodos deben pertenecer a una clase.
• Cuando una clase extiende a otra hereda todas sus atributos y métodos.
• En Java no existe la herencia múltiple.
• Object es la base de toda la jerarquía de clases de Java. Si al definir una
clase no se especifica la clase que extiende, por default deriva de Object.

http://fcqi.tij.uabc.mx/usuarios/palacios/java4.pdf 22
2.5 Modificadores de Acceso (Clase)
Los modificadores de acceso a las clase son opcionales, se anteponen a la
palabra reservada class, pueden ser de tipo public, abstract y final.

public: la clase puede ser utilizada por objetos que estén fuera del paquete
actual. Por omisión, una clase sólo puede ser utilizada por otras clases dentro
del mismo paquete en el que están declaradas.

abstract: Se usa para indicar que una clase es abstracta, esto significa que la
clase puede contener métodos sin implementación (abstractos). Una clase
abstracta está diseñada para ser una superclase y no pueden crear objetos
de ella.

final: cuando una clase tiene el modificador final es una clase que no puede
tener subclases.
http://fcqi.tij.uabc.mx/usuarios/palacios/java4.pdf 23
2.5 Modificadores de Acceso (Atributos)
El uso de clases permite proteger sus variables y métodos del acceso de
otros objetos. Java proporciona cuatro niveles de acceso para las variables y
métodos miembros estos son: private, protected, public y acceso de paquete.

http://fcqi.tij.uabc.mx/usuarios/palacios/java4.pdf 24
2.5 Modificadores de Acceso (Atributos)
private: Es el nivel de acceso más restringido. Los miembros privados están
disponibles sólo para la clase en las que está definidos.
protected: Permite que la misma clase, subclases y todas las clases dentro del
mismo paquete tengan acceso a los miembros protected.
public: Todas las clases tienen acceso a los miembros públicos de la clase. Los
miembros públicos se emplean solamente cuando el acceso a ellos produce
resultados indeseables.
package: Este nivel es el que se establece si no se indica un nivel de acceso a
los miembros. El acceso de paquete permite que las clases dentro del mismo
paquete que la clase tengan acceso a los miembros.
static: El campo static será el mismo para todas las instancias de la clase.

final: El campo debe ser inicializado y no se puede modificar

http://fcqi.tij.uabc.mx/usuarios/palacios/java4.pdf 25
2.5 Modificadores de Acceso (Métodos)
En Java los modificadores de Acceso a Métodos de la Clase son:
abstract: Es un método que no tiene cuerpo y pertenece a una clase abstracta.
final: El método no se puede sobreescribir.
native: Su cuerpo está implementando en otro lenguaje de programación.
public: El método está disponible para todas las clases.
protected: Esta disponible solo para la clase donde fue definido y sus subclases.
private: El método está disponible sólo para la clase a la que pertenece.
static: Se puede accesar sin necesidad de hacer una instancia de la clase a la cual
pertenece.
synchronized: Es un método monitoreado para evitar inteferencias entre hilos que
manipulan un mismo objeto. Este método debe detenerse antes de ser ejecutado
por un hilo.

http://fcqi.tij.uabc.mx/usuarios/palacios/java4.pdf 26
Fin
PRIMERA PARTE
Unidad 2

También podría gustarte