Académique Documents
Professionnel Documents
Culture Documents
(2ª. Parte)
sbm/UTFSM Sede Concepción
Herencia
Organización y sintaxis
class Padre{
Contiene sus propias variables y métodos.
}
class Hijo extends Padre{
Hereda las variables y métodos de Padre
Incorpora sus propias variables y métodos
}
class miAplicac{
public static main(String[ ] args ) {
Crea objetos de la clase Hijos, Padre, usa sus métodos y
define sus variables.
}
}
Creación de una jerarquía multinivel.
Ejemplo: Clases Caja, PesoCaja, PrecioCaja
class Caja {
Define dimensiones de la caja con sus variables y métodos.
}
class PesoCaja extends Caja {
Hereda variables y métodos de la clase Caja
Define variables y métodos propios para el cálculo de volumen y peso de las cajas.
}
class PrecioCaja extends PesoCaja {
Hereda de la clase PesoCaja (y de Caja)
Define variables y métodos propios para el cálculo del precio de las cajas.
}
El árbol de la jerarquía
Destacando las clases Caja, PesoCaja y PrecioCaja
Los Constructores sin
parámetros
Cuando se crea un objeto de una
clase derivada, se ejecutan todos
los constructores sin parámetros
de las jerarquías superiores, la
base en primer lugar (concepto
de herencia).
Ver LlamaConstruc.java
super( )
Dos usos posibles:
class AAA {
void metodoX { ...... }
}
class BBB extends AAA {
void metodoX { -------------------- }
}
Clases abstractas
Forma generalizada compartida por todas las subclases.
Superclase que NO implementa completamente sus métodos. Cada subclase asume la tarea
de completar los detalles. No existen objetos creados a partir de una clase abstract.
La superclase determina la naturaleza de los métodos a ser implementados por las subclases.
Un método definido como abstract DEBE ser implementado en las subclases.
Existe CONVENCION:
Conceptos:
Una Excepción es una condición anormal que surge
en una secuencia de código durante la ejecución de
un programa.
Una Excepción se produce al producirse un error de
ejecución; las Excepciones aportan formas
elaboradas para tratar los errores.
Una Excepción es un OBJETO que describe una
condición excepcional en la ejecución de un
programa.
Tipos de excepción
La jerarquía superior es la clase Throwable (lanzable)
Una Excepción lanza un objeto de una subclase de
Throwable, la que puede ser capturada o no por el código.
class DivPor0 {
public static void main(String[ ] args) {
int rr = 0;
int cuo = 100 / rr;
System.out.println("Hola, a toda la gallá !");
}
}
class UnaAplic {
public static main(String[ ] args){
int variables; ....
try{
(Código que puede producir errores)
}
catch (TipoExcepción e){
(Instrucciones para manejar los errores)
}
}
}
Cláusulas catch múltiples
Para capturar más de un tipo de excepción
class UnaAplic2 {
public static main(String[ ] args){
int variables; ....
try{
(Código que puede producir errores tipo1)
try{
(Código que puede producir errores tipo2)
}catch (ArithmeticException e){
(Instrucciones para manejar errores tipo2) }
}catch(ArrayIndexOutOfBoundsException e){
(Instrucciones para manejar errores tipo1) }
}
}
finally
Evita que un método termine de manera prematura.
• Visitar y estudiar
http://download.oracle.com/javase/1.4.2/docs/guide/lang/assert.html
También,
http://www.adictosaltrabajo.com/tutoriales/tutoriales.php?pagina=asserts
y muchos otros sitios ... (con Google, poner assert)
La ejecución
Para ejecutar, C:\...>java -ea Aserc
Clases:
BitSet Properties
Date Random
Dictionary Stack
Hashtable StringTokenizer
Obsevable Vector
Interfaz: Enumeration
java.net
„net‟, para aplicaciones en red, protocolo TCP/IP.
Clases:
ContentHandler SocketImpl
DatagramPacket URL
DatagramSocket URLConnection
InetAddress URLEncoder
ServerSocket URLStreamHandler
Socket
Interfaces: ContentHandlerFactory,
SocketImplFactory, URLStreamHandlerFactory
java.awt
„awt‟, abstract windows toolkit
Clases:
Component
Container
Window
Frame
Panel
Canvas
Interface: MenuContainer
java.applet
„applet‟, application ...., sin traducción feliz.