Post on 04-Jul-2015
UNIDAD 1Nomenclatura y Estructura de un
programa en Java
Adalberto Torres Gamas
División de Informática y Computo.
Universidad Mundo Maya
Villahermosa, Tabasco, México.
OBJETOS
Java, P. O. O P. O. O = Programación Orientada a Objetos Hay muchos lenguajes POO, Java es uno de ellos.
JRE
clase
método propiedad
Un objeto cambiará
susPropiedades
por medio de los
métodos.
Instancias
2Nomenclatura y estructura de un
programa en java
Pasos de ejecución de un programa
Código fuente HolaMundo.java
Compilador javac Javac HolaMundo.java
Prueba y corrección de
errores
HolaMundo.class
Maquina Virtual Java Java HolaMundo
3Nomenclatura y estructura de un
programa en java
Java, P. O. O Clase: Representación abstracta (modelo) de una entidad del
mundo real por medio de atributos (propiedades) y métodos (comportamientos).
Objeto: es una Instancia de una Clase (representación real de la clase).
Propiedades: son los que distinguen a un objeto y tienen valores que dependen de la propiedad de que se trate.
Métodos: Son las operaciones que pueden realizarse sobre el objeto, normalmente estarán incorporados en forma de programas (código) que el objeto es capaz de ejecutar
4Nomenclatura y estructura de un
programa en java
Nomenclatura y estructura de un programa en java
5
Estructura general de un programa Un archivo fuente (*.java) puede contener más
de una clase.
Sólo una clase puede ser public.
El nombre del archivo fuente (*.java) debe coincidir con el nombre de la clase public ,es importante que coincidan mayúsculas y minúsculas
Nomenclatura y estructura de un programa en java
6
Estructura general de un programa Ejemplo de nombre de archivo y de clase principal.
Archivo: MiClase.java
public class MiClase
{
}
Nomenclatura y estructura de un programa en java
7
Estructura general de un programa La aplicación se ejecuta por medio del nombre de la
clase que contiene la función main()
Archivo: MiClase.javapublic class MiClase
{
public static void main(String[ ] args)
{
}
}
Nomenclatura y estructura de un programa en java
8
public static void main (String[] args) {
}
Estructura general de un programaMétodo estático main que es el que la JVM ejecutará para iniciar nuestros
.Nota: El arreglo o vector args se utiliza para recibir todas las órdenes de la JVM, los vectores en Java son objetos que tienen propiedades.
Nomenclatura y estructura de un programa en java
9
Variables (i) Etiqueta o nombre de un espacio de memoria reservado, para
almacenar un valor que corresponde a un tipo de dato:
Variables
Primitivas
Están definidas mediante un valor único que puede
ser entero, de punto flotante, carácter o
booleano.
Referencia
Referencias o nombres de una información más
compleja: rrays u objetos de una determinada clase.
Nomenclatura y estructura de un programa en java
10
Variables (ii) Desde el punto de vista del papel o misión en el programa, las
variables pueden ser:
Miembro
Miembro de una clase: Se definen en una clase, fuera de
cualquier método;
Locales
Se definen dentro de un método o más en general dentro de
cualquier bloque entre llaves {}. Se crean en el interior del bloque y se destruyen al finalizar dicho
bloque.
Pueden ser también tipos primitivos o referencias.
Nomenclatura y estructura de un programa en java
11
Nombres de variables Se pueden crear con mucha libertad. Pueden ser cualquier conjunto
de caracteres numéricos y alfanuméricos, sin algunos caracteres especiales ( ,.+-*/ etc.) o palabras reservadas.
Palabras reservadas que no se deben usar como variables por ser por ser parte de sintaxis java:
Tipos de datosTipos de
datosalmacena En memoria Alcance o rango
int Enteros 4 bytes -2,147,483,648 a +2,147,483,648
byte byte 1 byte -128 a 128
short Enteros cortos
2 byte -32,768 a 32,768
long Enteros largos
8 byte -9,223,372,036,854,775,808 a 9,223,372,036,854,775,808
char letra de 0 a 65535, 1 letra
boolean 0 /1 1bit 0 o 1
float Punto flotante
4Bytes
double 8Bytes
String No es un tipo de datos básico, es un objeto básico, con propiedades y métodos, pero el lenguaje Java permite definir un nuevo objeto con el delimitador (“), por lo que podemos concatenar (unir) texto utilizando el operador (+) con los nombres de los objetos de tipo String y los trozos de texto delimitados con (“).
12Nomenclatura y estructura de un
programa en java
Declaración de variables
Nomenclatura y estructura de un programa en java 13
int x;
// Declaración de la variable primitiva x de tipo entero. Se inicializa a 0
Int a,b,r;
// Declaración de las variable primitiva a,b,r de tipo entero.
float pi = 3.141516;
// Declaración de la variable primitiva pi. Se inicializa a 3.141516
char salir='q';
// Declaración de la variable primitiva salir. Se inicializa con el caracteri q
String capital = "Washington D.C.";
// Declaración de la variable capital. Se inicializa con la cadena "Washington D.C."
Operaciones y operadores (i) Operaciones
Asignación
Aritméticos
Relacional
Lógica
A nivel de bit
Operadores de asignación
Nomenclatura y estructura de un programa en java 14
Ejemplopublic class suma
{
public static void main(String[] args)
{
int x,y,r;
x=10;
System.out.println("el valor de x="+x);
y=5;
System.out.println("el valor de y="+y);
r=x+y;
System.out.println("la suma es="+r);
}
}
Nomenclatura y estructura de un programa en java 15
Operadores principales
Nomenclatura y estructura de un programa en java 16
ejercicio
Realizar un programa que dado los numero 5 y 30 realice las siguientes operaciones La suma es: 35 La multiplicación es :150 La resta es: 25 La división es: 6 El residuo es: 0
Nomenclatura y estructura de un programa en java 17
Entrada y Salida a través de consolaEn Java Existen varios Objetos que permiten Entrada y Salida de datos a través
de la Consola (es decir teclado y pantalla).
Nomenclatura y estructura de un programa en java 18
System.out
System.in
Utilizado para imprimir por pantalla. Dispone de métodos para escribir con formato en el flujo de salida, usualmente el monitor:
propiedad de System es de la clase o tipo InputStream, que también es parte de la biblioteca de Java. Aquí vemos los métodos que nos interesan.
Objeto System
Clase de salida(System.out) (i)Son aquellas combinaciones de caracteres que nos permiten insertar una
cadena de texto que no es posible tipear porque denota un trozo de texto.
Lista de las secuencias de escape más usadas y una breve explicación de su utilidad
Nomenclatura y estructura de un programa en java 19
System.out.println(“Hola, mi primer programa");
Clase de salida(System.out) (ii)Son aquellas combinaciones de caracteres que nos permiten insertar
una cadena de texto que no es posible tipear porque denota un trozo de texto.
Nomenclatura y estructura de un programa en java 20
//imprimir el texto normalSystem.out.println(“Hola, mi primer programa");Salida: Hola, mi primer programa
//imprimir las comillasSystem.out.println("\”Hola, mi primer programa\”");;Salida: ”Hola, mi primer programa ”
//imprimir una diagonalesSystem.out.println(“ Unidad C:\\");Salida: Unidad C:\
Clase de salida(System.out) (iii)El tipo de las secuencias de caracteres en Java se llama String.
Nomenclatura y estructura de un programa en java 21
String s = "Nocturno y dulce revuelo"; System.out.println(s);
Salida: Nocturno y dulce revuelo
El siguiente código declara una variable de este tipo y muestra su contenido por pantalla:
Es importante observar que el nombre de la variable no va entre comillas;
si se escribe System.out.println("s"); en lugar de la frase el código mostraría por pantalla simplemente s.
Clase de salida(System.out) (iv)println() es tan flexible que nos permite igualmente escribir enteros,
caracteres o números reales.
Nomenclatura y estructura de un programa en java 22
System.out.println(124); System.out.println('a'); System.out.println(1.618033);
124 a1.618033
Por ejemplo:
Salida presentada en pantalla
Clase de salida(System.out) (v)También podemos combinar diferentes tipos utilizando (+) por ejemplo:
Nomenclatura y estructura de un programa en java 23
public class Prueba { public static void main(String[ ] args) {
String s1 = "Entonces, quedamos a las "; int hora1 = 11; String s2 ="?"; String s3 = "No, mejor a las "; double hora2 = 11.45; System.out.println(s1+hora1+s2); System.out.println(s3+hora2+". Vale"+s2);
} }
¿Cuál será el resultado?
Nomenclatura y estructura de un programa en java
24
Lectura desde teclado(System.in) (i) Es parte de la biblioteca de Java.
Para leer un dato desde el teclado, System.ini no puede funcionar por si misma a diferencia de System.out.println
Se requiere de otra clase para dicho propósito: Scanner.
Nomenclatura y estructura de un programa en java
25
Lectura desde teclado(System.in) (ii) Que se requiere para utilizar Scanner:
Para utilizarla debe incluirse mediante la palabra clave import. En este caso la clase Scanner es parte del paquete util que es a su vez parte de la clase java.
import java.util.Scanner;
Scanner es una clase que no es incluida de forma automática en java
Si se desean incluir varias clases se incluirán varias sentencias import:
import java.util.Scanner;import java.util.Vector;
Para incluir todas clases del mismo paquete se puede usar el símbolo *:
import java.util.*;
(Declararse antes de iniciar la clase)
Tarea:
¿Qué clases contiene el paquete util y para que sirve cada una?
Investigar al menos 10.
Nomenclatura y estructura de un programa en java 26
Nomenclatura y estructura de un programa en java
27
Lectura desde teclado(System.in) (iii) El objeto Scanner: Es necesario crear una variable de tipo Scanner.
Esto se realiza dentro de la clase principal main.
Scanner sc = new Scanner(System.in);
Sc es una variable que puede ser cualquier secuencia de caracteres que cumpla con las reglas de declaración de variables. Puede llamarse cualquier nombre.
Variable sc de tipo objeto Scanner
se crea un objeto de tipo Scanner mediante new
System.in indica de dónde se leerá, en
este caso de la entrada estándar
Nomenclatura y estructura de un programa en java
28
Lectura desde teclado(System.in) (iv) El objeto Scanner: Es necesario crear una variable de tipo Scanner.
Esto se realiza dentro de la clase principal main.
int edad = sc.nextInt();
Existen un métodos para leer cada tipo de datos.
Variable edad de tipo Entero
Utilizo el método nextInt() que pertenece al objeto sc de tipo
Scanner
Método que devuelve el entero leído desde
el objeto de tipo Scanner
Nomenclatura y estructura de un programa en java
29
Lectura desde teclado(System.in) (v) Una vez que se declara e inicializa la variable se pueden invocar métodos de la
clase Scanner deacuerdo a su tipo de datos tales como:
g
Metodo Función
nextInt(); int i = sc.nextInt( ); obtiene un número entero
nextDouble(); double d = sc.nextDouble( ); obtiene un número real
nextLine(); String nombre= sc.nextLine(); obtiene una cadena de caracteres
nextByte(); byte b = sc.nextByte( ); obtiene un número byte
nextFloat(); float f = sc.nextFloat( ); obtiene un número real
nextLong(); long l =sc.nextLong( ); obtiene un número entero largo
nextShort(); short s = sc.nextShort( ); obtiene un número entero corto
next(); String str = sc.next();
Dificultad en nextLine()Cuando se ingresa una cadena con caracteres en blanco debemos tener en cuenta en llamar al método nextLine().Una dificultad se presenta si llamamos al método nextLine() y previamente hemos llamado al método nextInt(), esto debido a que luego de ejecutar el método nextInt() queda almacenado en el objeto de la clase Scanner el caracter "Enter" y si llamamos inmediatamente al método nextLine() este almacena dicho valor de tecla y continúa con el flujo del programa. Para solucionar este problema debemos generar un código similar a:
System.out.print("Ingrese edad:");
edad1=teclado.nextInt();
System.out.print("Ingrese el apellido y el nombre:");
teclado.nextLine();
apenom2=teclado.nextLine();
Otra opción es utilizar el metodo next()
Nomenclatura y estructura de un programa en java 30
Ejemplo
import java.util.Scanner;
public class Lectura{ public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("¿Cómo te llamas? "); String nombre = sc.nextLine(); System.out.println("Es un placer conocerte "+nombre); }}
Nomenclatura y estructura de un programa en java 31
Realizar el siguiente ejercicio.
http://gpd.sip.ucm.es/rafa/docencia/programacion/tema1/tema1.html#tema2es
Ejercicios:
Realizar los siguientes programas: Programa que calcule el área de un cuadrado Programa que calcule el área de un rectángulo Programa que calcule el área de un triangulo Programa que calcule el área de un circulo
Nomenclatura y estructura de un programa en java 32
Operadores relacionales y logicos
Operadores relacionales
Operadores lógicos
Nomenclatura y estructura de un programa en java 33
Ejercicioimport java.util.Scanner;
public class logico
{
public static void main(String[ ] args)
{
Scanner leer = new Scanner(System.in);
boolean b;
int x,y;
System.out.println("Escribe el valor de x: ");
x=leer.nextInt();
System.out.println("Escribe el valor de y: ");
y=leer.nextInt();
b=x<y;
System.out.println("El resultado de a<b es: "+b);
}
}
Nomenclatura y estructura de un programa en java 34
System.out.println("decir que "+ x +" es menor que "+ y + " es :"+b);
Ejercicios:
Realizar el siguiente programa: Programa que reciba dos números, A y B, y muestre en pantalla Si
el Resultado es falso o verdadero de acuerdo a los números introducidos con las siguientes operaciones:
A es mayor que B?: A es menor que B?: A es mayor o igual que B?: A es menor o igual que B?: A es igual a B?: A es diferente de B?:
Nomenclatura y estructura de un programa en java 35
Ejercicio resueltoimport java.util.Scanner;
public class LogicoAyB
{
public static void main(String[] args)
{
Scanner leer = new Scanner(System.in);
System.out.print("Introduce el valor de A: ");
int A=leer.nextInt();
System.out.print("Introduce el valor de B: ");
int B=leer.nextInt();
System.out.println("A es mayor que B?: " + (A>B));
System.out.println("A es mayor o igual que B?: " +(A>=B));
System.out.println("A es menor que B?: " +(A<B));
System.out.println("A es menor o igual que B?: " +(A<=B));
System.out.println("A es igual que B?: " +(A==B));
System.out.println("A es diferente de B?: " +(A!=B));
}
}
Nomenclatura y estructura de un programa en java 36
Ejercicios:Realizar el siguiente programa: Programa que reciba 3 números, A, B y C y muestre en pantalla de
acuerdo a los números introducidos si es falso o verdadero en las siguientes operaciones:
A es mayor que B y C ?: B es mayor que A y C ?: C es mayor que A y B ?:
A es menor que B y C ?: B es menor que A y C ?: C es menor que A y B ?:
A,B y C son iguales?:
Nomenclatura y estructura de un programa en java 37
Ejercicios:Realizar el siguiente programa:
Escribir un programa desde su análisis y algoritmo que permita leer un numero de medida dada en km y convertir e imprimir a sus equivalentes en : Metros Millas Yardas; Pulgadas;
Escribir un programa que a partir de que el usuario introduzca el radio de un circulo, calcule y visualice lo siguiente: Área del circulo Diámetro del círculo y Longitud de la circunferencia.
Nomenclatura y estructura de un programa en java 38
bibliografía
Salida y entrada http://gpd.sip.ucm.es/rafa/docencia/
programacion/tema1/tema1.html#tema2es
Nomenclatura y estructura de un programa en java 39