PDF de programación - Programación con java

Imágen de pdf Programación con java

Programación con javagráfica de visualizaciones

Actualizado el 10 de Junio del 2019 (Publicado el 22 de Abril del 2019)
2.217 visualizaciones desde el 22 de Abril del 2019
808,5 KB
203 paginas
Creado hace 19a (31/05/2004)
PROGRAMACIÓN CON JAVA

Cursos TAG

Alberto Tablado
Julio 2004

Índice

● Introducción a Java
● Java básico
● Objetos con Java
● Conceptos avanzados

INTRODUCCIÓN A JAVA

● Historia
● Características de Java
● Java Development Kit
● Herramientas del kit
● Entornos de desarrollo

Bibliografía

● Java Tutorial

– http://java.sun.com/docs/books/tutorial/index.html

● Thinking in Java

– http://www.mindview.net/Books/TIJ/

● Aprenda Java como si estuviera en 1º
– http://www.entrebits.com/descargas/programas/

aprenda-java-como-si-estuviera-en-primero/

● Curso de iniciación a Java

– http://www.gui.uva.es/~jal/java/index.html

Una breve historia

● Iniciativa de Sun Microsystems en 1991
● Lenguaje para ser empleado en

dispositivos pequeños (set top boxes)
– Poca memoria
– Poca potencia
– Independencia de la plataforma

Una breve historia

● Fracaso y oportunidad
● Con el auge de la WWW, crearon el

navegador HotJava
– Características de Java
– Primero en usar applets

● El éxito vino porque Netscape aceptó

los applets

Características

● Simple
● Orientado a objetos
● Distribuido
● Robusto
● Seguro
● Independiente de la plataforma
● Multihilo nativo

Simple

● Sintaxis de C / C++

– Gran base de programadores
● Se eliminan sus problemas

– Aritmética de punteros
– Recolección de basura

Orientado a objetos

● Paradigma de programación que

basado en modelar el sistema como
clases e instancias de las clases
● Evolución del modelo imperativo

Robusto

● Gran cantidad de comprobaciones en

tiempo de ejecución
– Límite de arrays
– Tamaño de la pila
– Acceso a variables
– Tipo de objetos

Seguro

● Seguridad a nivel de código

– Se comprueba que el código es coherente

antes de ejecutarse

● Seguridad en ejecución

– Gestores de seguridad limitan acceso a

recursos

Independiente de la plataforma

● Java sigue la política de WORE

– Escribe (compila) el código una vez y

podrás ejecutarlo donde sea

– Multiplataforma mediante el uso de un

código intermedio (bytecodes)

● Java Virtual Machine

– Interpreta el código bytecode

Multihilo nativo

● Java soporta hilos de forma nativa la

máquina virtual

● Mapeados sobre el sistema operativo

(native) o simulados (green)

Ediciones JAVA

Java Development Kit

● J2SE (Java 2 Standard Edition)
● Nivel intermedio de programación
● Versión 1.4

– Java 2 a partir de la versión 1.2
– La última versión es la 1.5

Java Development Kit

Java Development Kit

● No incluye entorno de edición
● Varios:

– NetBeans / SunOne
– Eclipse
– JDeveloper / JBuilder
– IBM VisualAge

Java Development Kit

● Diferencias
● Java 2 SDK

aplicaciones

● Java 2 JRE

– Incluye lo necesario para el desarrollo de

– Incluye sólo lo necesario para la ejecución

de aplicaciones

El CLASSPATH

● Dónde se encuentran las clases para

ejecutar la aplicación

● Dos maneras:

– Variable de entorno CLASSPATH
– Argumento (-cp o -classpath)

● Por defecto, las clases del JDK (JRE)

Compilar con el JDK

● La aplicación es javac
● javac <fichero.java>

– -d <destino>
– -classpath <jar_o_directorio>

Simple

Ejecutar con el JDK

● La aplicación es java
● java <clase>

– -cp <jar_o_directorio>
● java -jar <fichero.jar>
– -cp <jar_o_directorio>

Simple

Ejecutar con el JDK

● La aplicación es appletviewer
● appletviewer <fichero.html>
● O abrir el fichero HTML con un

navegador

PruebaApplet

Ejemplos de Applets

● Duke bailando

– http://java.sun.com/docs/books/tutorial/getStarted/index.html

● Pintando en pantalla

– http://java.sun.com/docs/books/tutorial/java/concepts/practical.html
● Applets de ejemplo sobre la máquina

virtual Java
– http://pl.changwon.ac.kr/~pl/seminar/jvm/insidejvm/applets/

Ficheros JAR

● Java Archive
● Son ficheros ZIP que contienen clases,

fuentes, etc.

● Tienen un directorio META-INF dónde

reside el manifiesto (MANIFEST.MF)
– Describe el contenido del JAR

La importancia del API

● Un lenguaje muere si no tiene un buen
API (Interfaz para la programación de
aplicaciones)

● Java tiene mucha funcionalidad nativa
– http://java.sun.com/j2se/1.4.2/docs/api/index.html

● APIs para otras funcionalidades

JDeveloper

● Desarrollado por Oracle

– Empezó como fork del JBuilder

● Gratuito
● Desarrollo de aplicaciones
● Depurador
● Diseño de ventanas

JDeveloper

JDeveloper

● Ejecutar JDeveloper
● Abrir el fichero curso.jws

– File -> Open

● Ejemplos del curso
● Desarrollar nuevos ejemplos

JDeveloper

● File -> New
● General -> Simple Files -> Java Class

JAVA BÁSICO

● Ficheros Java
● Variables y tipos de datos
● Ámbito y visibilidad
● Operadores y expresiones
● Sentencias (condicionales y bucles)
● Comienzo y terminación de programas

Código de ejemplo

public class Basic {
public static void main(String[] args) {
int sum = 0;
for (int current = 1; current <= 10; current++) {
sum += current;
}
System.out.println("Sum = " + sum);
}
}

Basic

Ficheros JAVA

● Ficheros de texto
● Los ficheros describen clases

– Como mucho, una única clase pública
● Los ficheros deben llevar el mismo

nombre que la clase pública

Comentarios

● Comentario de una línea: //

– int usu = 0; // el número de usuarios

● Comentario de bloque: /* .... */

– /* Esto no se tendrá

en cuenta */

● Comentario javadoc: /** .... */

– Para comentar el código

Comentarios

La definición de la clase

● En Java, todo son clases
● Así que cada fichero define una clase

– public class MiClase

● La clase tiene atributos y métodos
● El método main es especial

– public static void main(String[] args) {...}
– Es el punto de arranque de una clase

Variables

● Almacenan el estado de los objetos
● Pueden definirse en cualquier parte del

código, antes de su uso

● Deben empezar con letra, guión bajo

(_) o dólar ($)

● Sensible a mayúsculas/minúsculas

Variables

● Dí que variables son válidas












int
anInt
i
i1
1
thing1
1thing
ONE-HUNDRED
ONE_HUNDRED
something2do

Variables

● Las variables tienen un tipo que define
el rango de valores y las operaciones
que pueden hacerse
– Java es fuertemente tipado

● Tipos primitivos
● Tipos referencia

Tipos de datos primitivos

● Enteros (se inicializan a 0)

– Byte: un byte con signo ((byte)12)
– Short: dos bytes con signo ((short)1231)
– Int: cuatros bytes con signo (1238921)
– Long: ocho bytes con signo (728478283L)

● Reales (se inicializan a 0.0)

– Float: punto flotante 32 bits (1.2342F)
– Double: punto flotante 64 bits (123.131)

Tipos de datos primitivos

● Booleanos (se inicializa a false)

– true / false

● Carácter (se inicializa al carácter nulo)

– 'S', 'a'

● El tamaño de datos está definido y es

independiente de la plataforma

TipoDatos

Tipos de datos referencia

● Objetos

– Instancias de clases

● Arrays

– Colección de elementos del mismo tipo,

sean básicos o complejos

● Se inicializan a null

Inicialización

● Las variables pueden inicializarse en la

definición

int a = 2;
char b = 'a';
double c = 123.13123;
Bicicleta d = new Bicicleta();

Constantes

● Variables que no pueden cambiar de

valor una vez establecido

● Modificador final

final int a;
a = 12;
final double b = 456.4546456;

Constantes

Ámbito

● Ámbito: parte de programa en el que

una variable está definida

● Variable miembro (de una clase)
● Parámetro (de un método)
● Variable local (de un método)
● Excepciones

Ámbitos

Ambito

Visibilidad

● Visibilidad: parte de programa en el que

una variable es accesible sin ser
calificada

● Las variables se pueden ocultar por

otras con el mismo nombre en ámbitos
más anidados

Visibilidad

Int a

Int a

Int a

Int a

¿a?

Visibilidad

Variables

public class Basic {
public static void main(String[] args) {
int sum = 0;
for (int current = 1; current <= 10; current++) {
sum += current;
}
System.out.println("Sum = " + sum);
}
}

¿Cúal es? ¿Qué tipo tienen? Alcance

Basic

Variables

public class Basic {
public static void main(String[] args) {
int sum = 0;
for (int current = 1; current <= 10; current++) {
sum += current;
}
System.out.println("Sum = " + sum);
}
}

¿Cúal es? ¿Qué tipo tienen? Alcance

Basic

Variables

public class Basic {
public static void main(String[] args) {
int sum = 0;
for (int current = 1; current <= 10; current++) {
sum += current;
}
System.out.println("Sum = " + sum);
}
}

¿Cúal es? ¿Qué tipo tienen? Alcance

Basic

Operadores

● Unarios

op1 operator
operator op1

● Binarios

op1 operator op2

● Ternarios

op1 operator1 op2 operator2 op3

Operadores aritméticos

● Binarios

– Suma: op1 + op2
– Resta: op1 – op2
– Multiplicacion: op1 * op2
– División: op1 / op2
– Módulo: op1 % op2

OperadoresAritmeticos

Operadores aritméticos

● Operaciones con enteros y reales
● El resultado depende de los operadores

– Algún double -> double
– Algún float -> float
– Algún long -> long
– Si no, int

Operadores aritméticos

● Unarios

– Número negativo (-2, -123)
– Convierte byte y short en int (+2, +65)

● Suma / resta unaria

– ++op1
– op1++
– --op1
– op1--

Operadores de comparación

● Devuelven booleanos
– Igualdad: op1 == op2
– Desigualdad: op1 != op2
– Mayor que: op1 > op2
– Mayor o igual que: op1 >= op2
– Menor que: op1 < op2
– Menor o igual que: op1 <= op2

OperadoresComparacion

Operadores de comparación

● Mucho cuidado con la igualdad
● Cuando se comparan variables
referencia, se compara si ambos
objetos son el mismo, no si son iguales
(tienen el mismo estado)

● Error típico

OperadoresComparacion

Operadores booleanos

● Operan sobre booleanos y devuelven

booleanos
– AND: op1 && op2
– OR: op1 || op2
– NOT: !op1
– XOR: op1 ^ op2

Operadores booleanos

● Java sólo evalúa si es necesario
● Si el primer operando de un AND es

false, no evalúa el segundo y devuelve
false
– Lo mismo con OR

● Para obligar a evaluar el segundo

oper
  • Links de descarga
http://lwp-l.com/pdf15765

Comentarios de: Programación con java (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad