Publicado el 6 de Julio del 2017
1.337 visualizaciones desde el 6 de Julio del 2017
386,1 KB
100 paginas
Creado hace 17a (09/10/2007)
Introducción a la
programación con JAVA
Elena Hernández Pereira
Óscar Fontenla Romero
Antonio Fariña
Tecnología de la Programación
― Octubre 2007 ―
Departamento de Computación
Facultad de Informática
Universidad de A Coruña
Sumario
Programación orientada a objetos (POO)
Encapsulación
Herencia
Polimorfismo
Lenguaje de programación Java
Introducción a la programación con JAVA
2
Programación orientada a
objetos (POO)
Programación orientada a objetos: POO (I)
La programación orientada a objetos se basa en la programación
de clases
Un programa se construye a partir de un conjunto de clases
Clase: una agrupación de datos (variables) y de funciones
(métodos) que operan sobre los datos
A estos datos y funciones pertenecientes a una clase se les
denomina variables y métodos o funciones miembro
Todos los métodos y variables se definen dentro del bloque de la
clase
Introducción a la programación con JAVA
4
Programación orientada a objetos: POO (II)
Conceptos importantes de la POO:
Encapsulación:
Las estructuras de datos y los detalles de la
implementación de una clase se hallan ocultos de
otras clases del sistema
Control de acceso a variables y métodos
Introducción a la programación con JAVA
5
Programación orientada a objetos: POO (III)
Conceptos importantes de la POO:
Herencia:
Una clase (subclase) puede derivar de otra
(superclase)
La subclase hereda todas las variables y métodos de
la superclase
Las subclase puede redefinir y/o añadir variables y
métodos
Fomenta la reutilización de código
Introducción a la programación con JAVA
6
Programación orientada a objetos: POO (IV)
Ejemplo herencia:
Clase PERSONA
Clase ALUMNO (SUBCLASE)
NIF
NIF
Nombre
Nombre
Apellidos
Apellidos
Edad
Edad
Titulación
Curso
Introducción a la programación con JAVA
7
Programación orientada a objetos: POO (V)
Polimorfismo:
Es la capacidad de tener métodos con el mismo
nombre y diferente implementación
Una operación puede tener más de un método que la
implementa
CLASE
INSTRUMENTO
Método tocar
Introducción a la programación con JAVA
8
Clases y objetos
Una vez definida e implementada una clase, es posible
declarar elementos de esta clase: objetos
De una única clase se pueden declarar o crear numerosos
objetos.
La clase es lo genérico: es el patrón o modelo para crear
objetos.
Cada objeto tiene sus propias copias de las variables
miembro, con sus propios valores
Vista externa de una clase: interfaz
Variables y métodos visibles por otras clases
Introducción a la programación con JAVA
9
Programación con Java
Bibliografía (I)
B. Eckel. Piensa en Java (4ª edición). Prentice Hall. 2007
H.M. Deitel, P.J. Deitel. Cómo programar en Java (5ª
edición). Pearson Prentice-Hall. 2004
D. Arnow, G. Weiss, C.-Brooklyn. Introducción a la
programación en Java. Un enfoque orientado a
objetos. Pearson Addison Wesley. 2000
K. Arnold, J. Gosling, D. Holmes. El lenguaje de
programación JAVA (3ª edición). Pearson Addison
Wesley. 2001
Introducción a la programación con JAVA
11
Bibliografía (II)
J. Jalón, J.I. Rodríguez, I. Mingo, A. Imaz, A. Brazález, A.
Larzabal, J. Calleja, J. García. Aprenda java como si
estuviese en primero. Escuela Superior de Ingenieros
Industriales. Universidad de Navarra
http://mat21.etsii.upm.es/ayudainf/
Fco. J. Ceballos, Java 2. Curso de programación, Ra-Ma,
2000
Introducción a la programación con JAVA
12
Introducción (I)
Desarrollado por Sun Microsystems en 1995
Características:
Simple
Código similar a C/C++ pero eliminando algunos elementos
conflictivos: punteros, herencia múltiple, etc.
Portable
Representación y comportamiento único para los tipos
primitivos
Sistema abstracto de ventanas que presenta el mismo
comportamiento en distintos entornos
Multiplataforma
Introducción a la programación con JAVA
13
Introducción (II)
Características (continuación):
Robusto
Fuerte comprobación de tipos y de límites de los arrays
Ausencia de punteros
Manejo de errores (excepciones)
Seguro
No se puede acceder a memoria directamente mediante
punteros
Gestor de seguridad (Security Manager) para los bytecodes
Orientado a objetos puro
Obliga a trabajar en términos que facilitan la reutilización
Introducción a la programación con JAVA
14
Introducción (III)
Características (continuación):
Orientado a Internet
Multihilo (multi-thread)
Da soporte a la programación de procesos concurrentes
Dinámico
Permite la carga dinámica de clases
Búsqueda de nuevos objetos o clases en entornos
distribuidos
Lenguaje interpretado
Introducción a la programación con JAVA
15
Introducción (IV)
Inconvenientes:
Amplio número de plataformas a soportar
No todas soportan la misma versión del lenguaje
Sun sólo soporta las versiones de MS Windows y
Solaris
Lentitud y amplio consumo de recursos
La máquina virtual está interpretando continuamente
el ByteCode
Utilización de los elementos avanzados de la
plataforma:
Recolector de basura, gestor de seguridad, carga
dinámica de clases, comprobaciones en tiempo de
ejecución, etc.
Introducción a la programación con JAVA
16
Java Development Kit (JDK)
Versiones:
1995 - JDK 1.0
1997 - JDK 1.1
1998 - JDK 1.2 (Java 2)
2000 - JDK 1.3
2002 - JDK 1.4
2004 - JDK 1.5
Java Runtime Environment (JRE)
Java Virtual Machine (JVM)
Java API: lenguaje básico + biblioteca estándar de clases
Introducción a la programación con JAVA
17
Modelo de ejecución
APLICACIONES JAVA
API
JAVA VIRTUAL MACHINE (JVM)
APLICACIONES
NO JAVA
SISTEMA OPERATIVO
SISTEMA OPERATIVO
HARDWARE
HARDWARE
Introducción a la programación con JAVA
18
Compilación y ejecución (I)
Compilador: javac
Código fuente extensión .java
Ficheros compilados (bytecodes) extensión .class
Ejecución: java
Ejecuta los ficheros .class
Herramienta de compresión: jar
Permite comprimir los ficheros compilados extensión
.jar
Variable de entorno CLASSPATH: determina dónde se
encuentran las clases de Java (del API)
Introducción a la programación con JAVA
19
Compilación y ejecución (II)
Entorno de
compilación de Java
Código fuente
Código fuente
Java (.java)
Java (.java)
Bytecode
de Java
Compilador
Compilador
de Java
de Java
(javac)
(javac)
ByteCode de
ByteCode de
Java (.class)
Java (.class)
Bytecodes locales
Bytecodes locales
Compilador
Bytecodes
o enviados a
o enviados a
través de la red
través de la red
Código máquina
nativo
Entorno de ejecución de Java
(Java Runtime Environment)
Cargador de
Cargador de
Clases
Clases
Librerías de
Librerías de
clases de Java
clases de Java
Intérprete
Intérprete
de Java
de Java
Compilador
Compilador
(Just-In-Time
(Just-In-Time
Compiler)
Compiler)
Máquina
virtual
de Java
(JVM)
Sistema de ejecución
Sistema de ejecución
Sistema operativo
Sistema operativo
Hardware
Hardware
Introducción a la programación con JAVA
20
Clases y objetos en Java (I)
La clase consiste en:
Atributos (datos que contienen: variables)
Métodos (operaciones que se les puede aplicar)
Un programa está compuesto por un conjunto de
clases (al menos una)
Debe existir un método main() en una de ellas
La clase define un determinado tipo de objetos
abstracción
Introducción a la programación con JAVA
21
Clases y objetos en Java (II)
Definición:
class NombreClase
{
// Atributos …
// Métodos …
}
Atributos variables
De tipo primitivo u otra clase
Métodos declaraciones de funciones:
Contiene el código que se ejecutará cuando se invoque
Introducción a la programación con JAVA
22
Clases y objetos en Java (III)
Ejemplo de una clase:
/** Clase de ejemplo: cuenta bancaria */
class CuentaBancaria
{
Variables
Métodos
long numero;
string titular;
long saldo;
void ingresar (long cantidad)
{
saldo = saldo + cantidad;
}
void retirar (long cantidad)
{
if (cantidad <= saldo)
saldo = saldo – cantidad;
}
}
Introducción a la programación con JAVA
23
Clases y objetos en Java (IV)
Ejemplo de una clase:
class Punto /* Clase de ejemplo: Punto */
{
// atributo x
// atributo y
// método x()
// método y()
// método x(double)
// método y(double)
double _x;
double _y;
double x(){
return _x;
}
double y(){
return _y;
}
void x(double d){
}
void y(double d){
}
_x = d;
_y = d;
Punto
-_x : double
-_y : double
+x() : double
+y() : double
+x (x:double)
+y (y:double)
}
Introducción a la programación con JAVA
24
Clases y objetos en Java (V)
Las clases anteriores no pueden ejecutarse por si
mismas
Son sólo definiciones que permiten crear y
manipular objetos de esa clase
La creación y manipulación de objetos se
realizará en un clase especial del programa:
Contiene el método main() comienza la ejecución
del programa
En un fichero fuente puede haber varias clases
pero sólo una que contenga el método main()
Introducción a la programación con JAVA
25
C
Comentarios de: Introducción a la programación con JAVA (0)
No hay comentarios