Sunteți pe pagina 1din 94

Dr.

Jorge Mayhuasca Guerra


¿QUE ES JAVA?

 Es un lenguaje de
programacion orientado
a objetos desarrollado por
la SUN MYCROSYSTEMS en
el año de 1995, para el
desarrollo de aplicaciones
multiplataforma La versión
actual es Java 2. (1999).y
utilizado para la Internet.

Dr. Jorge Mayhuasca Guerra


¿QUE ES JAVA?

 Independiente de la
plataforma(Sistema
Operativo) ya que se
ejecuta sobre una
máquina
virtual(interprete).

 La sintaxis y muchas
características de Java
derivan de C++.

Dr. Jorge Mayhuasca Guerra


La Máquina Virtual Java

Código fuente

Compilador Java

Byte-codes

Macintosh JVM Win32 JVM UNIX JVM

Código máquina Código máquina Código máquina


Macintosh Win32 UNIX

Dr. Jorge Mayhuasca Guerra


Independencia de la plataforma

 El código java es almacenado en un archivo con


extensión .java:
◦ Normalmente se define una clase por
archivo, aunque en un mismo archivo puede
definirse mas de una clase, pero solo una de
ellas puede ser pública.
◦ El nombre del archivo tiene que coincidir con
el nombre de la clase pública.

Dr. Jorge Mayhuasca Guerra


Independencia de la plataforma

 El .java es compilado en un archivo


.class(contiene bytecodes)
 Bytecodes son interpretados en tiempo de
ejecución

Dr. Jorge Mayhuasca Guerra


EJECUCION DE UN PROGRAMA EN JAVA

CODIGO CODIGO EJECUTAR


COMPILAR INTERPRETE
JAVA BYTES
JAVAC JAVA
(*.JAVA) (*.CLASS) (virtual java machine)

WIN LINUX UNIX

Dr. Jorge Mayhuasca Guerra


Compilador e intérprete de Java

Codigo
fuente
compilar

HelloWorld.java javac HelloWorld.java

java HelloWorld HelloWorld.class

ejecutar bytecode

Dr. Jorge Mayhuasca Guerra


Compilador e intérprete de Java
 El compilador analiza la sintaxis del código fuente (con
extensión .java). Si no hay errores, genera bytecodes
> javac <Nombre>.java

 El intérprete es la Máquina Virtual de Java que ejecuta


los bytecodes (*.class) creados por el compilador.
> java <Nombre> (sin extensión)
> java <Nombre> arg1 arg2 …

Dr. Jorge Mayhuasca Guerra


HERRAMIENTA DE PROGRAMACION

 El Netbeans 8.x es una Herramienta de


programación en java .

Dr. Jorge Mayhuasca Guerra


Elementos del Lenguaje
Elementos del lenguaje

 Caracteristicas del lenguaje


 Declaraciones
 Tipos de Datos
 Operadores
 Estructuras de control
 Clases y Objetos
 Paquetes

Dr. Jorge Mayhuasca Guerra


Caracteristicas del lenguaje

 Sensible a mayúsculas/misnúsculas
 Comentarios
 Lenguaje de formato libre
 Identificadores
 Palabras reservadas
 Variables y constantes
 Convenciones de nomenclatura
 Tiene reglas sobre los tipos de datos

Dr. Jorge Mayhuasca Guerra


Sensible a mayúsculas/minúsculas

 Se distingue entre mayúsculas y minúsculas.


 Los identificadores Papa, papa y PAPA son
diferentes.
 Todas las palabras reservadas del lenguaje van
en minúsculas.

Dr. Jorge Mayhuasca Guerra


Comentarios

// comentario
Los caracteres desde // hasta el final de la línea son
ignorados.
/* comentario */
Los caracteres entre /* y */ son ignorados
/** comentario */
Los caracteres entre /** y */son ignorados y se incluyen
en la generación autómatica de la documentación.

Dr. Jorge Mayhuasca Guerra


Lenguaje de formato libre

 La disposición de los elementos dentro del código es libre


 Instrucciones: línea simple de código terminada en ;
 Bloque de código: Conjunto de sentencias agrupadas
entre llaves.
{
X = x + 1;
Y = y + 1;
}
 Java permite espacios en blanco entre elementos del código
X1 = y * delta;
X2 = (y-1) * delta;

Dr. Jorge Mayhuasca Guerra


Palabras Reservadas

 Palabras con un significado especial para el compilador


 Ejemplos:
◦ Nombres de tipos básicos: boolean, char, double, int, …
◦ Indicadores de controls: do, if, else, for, while, …
◦ Class, interface, extends, implements
◦ package, import
◦ this, super
◦ Modificadores de acceso: public, private, protected
◦ Constantes: true, false, null
◦ Etc…

Dr. Jorge Mayhuasca Guerra


Variables y Constantes

 Variable: Zona de memoria cuyos valores van a


cambiar durante la ejecucuión.

 Declaración:
◦ <tipo> <variable>;

◦ <tipo> <var1>, <var2>, ..., <varn>;

◦ <tipo> <var1> = <valor>;

Dr. Jorge Mayhuasca Guerra


Variables y Constantes

 Ejemplos de declaración de variables:


◦ int x,y,z;
◦ int x = 9;
◦ boolean terminar = false;
◦ Cliente c1 = new Cliente();
 Constantes: Zona de memoria cuyos valores no
cambian
 Declaración:
◦ final <tipo> <variable> = <valor>;
 Ejemplo: final double PI = 3.14159;

Dr. Jorge Mayhuasca Guerra


Asignaciones

 Se utiliza el operador de asignación =


◦ <tipo> <variable> = <valor>;
◦ <tipo> <variable>;
<otras instrucciones>...
<variable> = <valor>;
 La parte izquierda siempre debe ser una variable
 La parte derecha puede ser un literal, una variable, una
expresión, una función o una combinación de todos.
◦ int x = 4; //Declaracion con asignación
◦ x = 9; //Se asume que x está definida

Dr. Jorge Mayhuasca Guerra


Tipos de Datos y Operadores
Tipos de Datos

 Java define dos tipos de datos


◦ Tipos primitivos
◦ Tipos referencia
 Los tipos primitivos son ocho agrupados en cuatro
categorías:
◦ Lógico: boolean
◦ Texto: char
◦ Entero:byte, short, int, long
◦ Real: float, double
 Los tipos referencia son apuntadores a objetos.

Dr. Jorge Mayhuasca Guerra


Tipos de Datos

 Tipos primitivos:
◦ boolean true o false
◦ char unicode! (16 bits)
◦ byte entero de 8 bits con signo.
◦ short entero de 16 bits con signo.
◦ int entero de 32 bits con signo.
◦ long entero de 64 bits con signo.
◦ float,double IEEE 754 floating point

Dr. Jorge Mayhuasca Guerra


Tipos de datos Referencia

 Un tipo referencia guarda un apuntador a la dirección donde se


ubica el objeto (32 bits).
 Sólo puede almacenar objetos de su propio tipo.
 Ejemplo:
Cuadrado cuad1, cuad2;
Circulo circ1;
cuad1 = new Cuadrado();
circ1 = cuad1; // Error de compliación
cuad2 = cuad1’; // Ok
 Todas las clases son de tipo referencia.
 El valor que toma por defecto una variable de tipo referencia es
null.

Dr. Jorge Mayhuasca Guerra


Cadenas de Caracteres

 La clase String permite manejar cadenas de caracteres.


 El literal string debe ir entre comillas dobles “”.
 Se puede crear una cadena de caracteres de dos formas:
◦ String nombre = new String(“Pepe”);
◦ String nombre = “Pepe”;

 Para concatenar dos cadenas se usa el operador +.


 No se guarda el carácter fin de cadena.

Dr. Jorge Mayhuasca Guerra


Conversiones de tipos

 La conversión de tipos (casting) debe realizarse entre


tipos de la misma naturaleza: numéricos o referencia.
 Al convertir un tipo a un tamaño más pequeño se puede
perder la información del los bits de mayor peso.
 No hay conversión automatica con el tipo boolean!
 La sintaxis es: (<tipo>) <expresion>
 Ejemplo: int i = (int) 1.345;

Dr. Jorge Mayhuasca Guerra


OPERADORES

Dr. Jorge Mayhuasca Guerra


OPERADORES

Dr. Jorge Mayhuasca Guerra


OPERADORES

Dr. Jorge Mayhuasca Guerra


PRECEDENCIA DE OPERADORES

Dr. Jorge Mayhuasca Guerra


PRECEDENCIA DE OPERADORES

Dr. Jorge Mayhuasca Guerra


ESTRUCTURA DE UN PROGRAMA EN JAVA

Dr. Jorge Mayhuasca Guerra


Formato de los archivos fuente

 Declaración de paquete (opcional)


◦ package <nombrePaquete>

 Instrucciones de importación(opcional)
◦ import <nombrePaquetes>

 Declaración de clase o interfaz


◦ [<mod>] class <NombreClase> {.....}

Dr. Jorge Mayhuasca Guerra


ESTRUCTURA DE UN PROGRAMA EN JAVA

import nombre_libreria ; Importacion de librerias

public class nombre_de_clase

{
// declaración de variables globales
Funcion main : funcion que
public static void main(String arg[]) permite el arranque del
programa
{
// declaracion de variables locales
// código de arranque de la aplicación

Constructor: funcion especial


public nombre_clase() que posee el mismo nombre
{ de la clase

}
}
Dr. Jorge Mayhuasca Guerra
Un programa Simple

// Fig. 2.1: Bienvenido1.java


// Programa para imprimir texto.

public class Bienvenido1


{
// El metodo main empieza la ejecucion de la aplicacion en Java

public static void main( String args[ ] )


{
System.out.println( "Bienvenido a la Programacion en Java!" );

} // fin del metodo main

} // fin de la clase Bienvenido1

Dr. Jorge Mayhuasca Guerra


Dr. Jorge Mayhuasca Guerra
Dr. Jorge Mayhuasca Guerra
Dr. Jorge Mayhuasca Guerra
Dr. Jorge Mayhuasca Guerra
Dr. Jorge Mayhuasca Guerra
Dr. Jorge Mayhuasca Guerra
Dr. Jorge Mayhuasca Guerra
Dr. Jorge Mayhuasca Guerra
Un programa Simple

// Fig. 2.3: Bienvenido2.java


// Imprimir una linea de texto con varias instrucciones.

public class Bienvenido2


{
// El metodo main empieza la ejecucion de la aplicacion en Java
public static void main( String args[] )
{
System.out.print( "Bienvenido a ");
System.out.println( "la Programacion en Java!" );

} // fin del metodo main

} // fin de la clase Bienvenido2

Dr. Jorge Mayhuasca Guerra


Un programa Simple

// Fig. 2.4: Bienvenido3.java


// Imprimir varias lineas de texto con una sola instruccion.

public class Bienvenido3


{
// El metodo main empieza la ejecucion de la aplicacion en Java
public static void main( String args[] )
{
System.out.println( "Bienvenido\na\nla programacion\nen Java!" );

} // fin del metodo main

} // fin de la clase Bienvenido3

Dr. Jorge Mayhuasca Guerra


Un programa Simple
// Fig. 2.6: Bienvenido4.java
// Imprimir varias lineas en un cuadro de dialogo.

public class Bienvenido4


{
// El metodo main empieza la ejecucion de la aplicacion en Java
public static void main( String args[] )
{
System.out.println( "%s\n%s\n",
" Bienvenido a", "la programacion en Java!" );

} // fin del metodo main

} // fin de la clase Bienvenido4

Dr. Jorge Mayhuasca Guerra


Un programa Simple

// Facultad de Ingeniería Industrial y de Sistemas


// Lenguaje de Programación Estructurada
// Profesor: Jorge Mayhuasca Guerra
// Fig. 2.7: suma.java
// Programa que suma dos números.
import java.util.Scanner; // el programa usa la clase Scanner

public class suma


{
// el método main empieza la ejecución de la aplicación Java

public static void main( String args[] )


{
// crea objeto Scanner para la entrada de la ventana de
comandos
Scanner input = new Scanner( System.in );

Dr. Jorge Mayhuasca Guerra


Continuacion...
int numero1; // primer número a sumar
int numero2; // Segundo número a sumar
int suma; // suma de número1 y número2

System.out.print( "Escriba el primer entero: " );


numero1 = input.nextInt(); // lee el primer número

System.out.print( "Escriba el Segundo entero: ");


numero2 = input.nextInt(); // lee el Segundo número

suma = numero1 + numero2; // suma los numeros

System.out.printf( "La suma es %d\n", suma ); // muestra


la suma

} // fin del método main

Dr. Jorge Mayhuasca Guerra


Dr. Jorge Mayhuasca Guerra
IMPRESIÓN DE ENTEROS

Dr. Jorge Mayhuasca Guerra


IMPRESIÓN DE NUMEROS DE PUNTO FLOTANTE

Dr. Jorge Mayhuasca Guerra


IMPRESIÓN DE NUMEROS DE PUNTO FLOTANTE

Dr. Jorge Mayhuasca Guerra


IMPRESIÓN DE CADENAS Y CARACTERES

Dr. Jorge Mayhuasca Guerra


IMPRESIÓN DE FECHAS Y HORAS

Dr. Jorge Mayhuasca Guerra


IMPRESIÓN DE FECHAS Y HORAS

Dr. Jorge Mayhuasca Guerra


IMPRESIÓN DE FECHAS Y HORAS

Dr. Jorge Mayhuasca Guerra


IMPRESIÓN DE FECHAS Y HORAS

Dr. Jorge Mayhuasca Guerra


IMPRESIÓN DE FECHAS Y HORAS

Dr. Jorge Mayhuasca Guerra


OTROS CARACTERES DE CONVERSION

Dr. Jorge Mayhuasca Guerra


OTROS CARACTERES DE CONVERSION

Dr. Jorge Mayhuasca Guerra


IMPRESIÓN CON ANCHURAS DE CAMPO Y PRECISIONES

Dr. Jorge Mayhuasca Guerra


USO DE BANDERAS EN LA CADENA DE FORMATO Printf

Dr. Jorge Mayhuasca Guerra


USO DE BANDERAS EN LA CADENA DE FORMATO PRINTF

Dr. Jorge Mayhuasca Guerra


USO DE BANDERAS EN LA CADENA DE FORMATO PRINTF

Dr. Jorge Mayhuasca Guerra


USO DE BANDERAS EN LA CADENA DE FORMATO PRINTF

Dr. Jorge Mayhuasca Guerra


USO DE BANDERAS EN LA CADENA DE FORMATO PRINTF

Dr. Jorge Mayhuasca Guerra


IMPRESIÓN CON INDICES COMO ARGUMENTOS

Dr. Jorge Mayhuasca Guerra


IMPRESIÓN DE LITERALES Y SECUENCIAS DE ESCAPE

Dr. Jorge Mayhuasca Guerra


Dr. Jorge Mayhuasca Guerra
CONSTRUCTORES DE STRING

Dr. Jorge Mayhuasca Guerra


METODOS LENGHT CHARAT Y GETCHARS DE STRING

Dr. Jorge Mayhuasca Guerra


METODOS LENGHT CHARAT Y GETCHARS DE STRING

Dr. Jorge Mayhuasca Guerra


COMPARACION ENTRE CADENAS

Dr. Jorge Mayhuasca Guerra


COMPARACION ENTRE CADENAS

Dr. Jorge Mayhuasca Guerra


COMPARACION ENTRE CADENAS

Dr. Jorge Mayhuasca Guerra


COMPARACION ENTRE CADENAS

Dr. Jorge Mayhuasca Guerra


COMPARACION ENTRE CADENAS

Dr. Jorge Mayhuasca Guerra


LOCALIZACION DE CARACTERES Y SUBCADENAS EN LAS CADENAS

Dr. Jorge Mayhuasca Guerra


LOCALIZACION DE CARACTERES Y SUBCADENAS EN LAS CADENAS

Dr. Jorge Mayhuasca Guerra


LOCALIZACION DE CARACTERES Y SUBCADENAS EN LAS CADENAS

Dr. Jorge Mayhuasca Guerra


EXTRACCION DE SUBCADENAS DE LAS CADENAS

Dr. Jorge Mayhuasca Guerra


CONCATENACION DE CADENAS

Dr. Jorge Mayhuasca Guerra


METODOS VARIOS DE STRING

Dr. Jorge Mayhuasca Guerra


METODOS VARIOS DE STRING

Dr. Jorge Mayhuasca Guerra


METODOS VALUEOF DE STRING

Dr. Jorge Mayhuasca Guerra


METODOS VALUEOF DE STRING

Dr. Jorge Mayhuasca Guerra


METODOS VALUEOF DE STRING

Dr. Jorge Mayhuasca Guerra


LA CLASE CHARACTER

Dr. Jorge Mayhuasca Guerra


LA CLASE CHARACTER

Dr. Jorge Mayhuasca Guerra


LA CLASE CHARACTER

Dr. Jorge Mayhuasca Guerra


LA CLASE CHARACTER

Dr. Jorge Mayhuasca Guerra


LA CLASE CHARACTER

Dr. Jorge Mayhuasca Guerra


LA CLASE CHARACTER

Dr. Jorge Mayhuasca Guerra


LA CLASE STRINGTOKENIZER

Dr. Jorge Mayhuasca Guerra

S-ar putea să vă placă și