Está en la página 1de 24

RESUMEN JAVA

JAVA- CLASES ABSTRACTAS, METODO GET Y SET, CLASE ARRAY,


Conceptos

Una clase es una plantilla en donde se especifica los


CLASE datos y el código que operará en esos datos.  Class Persona

OBJETO Un objeto es una instancia de una clase.


String cad2= new
String("Enma");
public String toString() {
Los métodos son subrutinas que return "Persona = " + nombre + " " + apellido + " -
MÉTODO manipulan los datos definidos por la Dir: " + direccion;
clase y, en muchos casos, brindan }
acceso a esos datos.

MAIN Ejecutor o lanzador public static void main(String[] args) {

public Persona(String nombre, String


Normalmente, usará un constructor para dar valores apellido, String direccion) {
CONSTRUCTOR iniciales.
super();
this.nombre = nombre;
this.apellido = apellido;
this.direccion = direccion;
}
BUCLES FOR EACH
La segunda forma de for implementa un ciclo
de estilo «for-each»(para cada uno). Un bucle
for-each recorre una colección de objetos,
como una matriz, de forma estrictamente
secuencial, de principio a fin.

En los últimos años, el estilo de bucle for-each


ha ganado popularidad entre los diseñadores
de lenguaje y programadores.

Originalmente, Java no ofrecía un bucle de


estilo for-each. Sin embargo, con el
lanzamiento de JDK 5, el bucle for se mejoró
para proporcionar esta opción.

Característica:

1. Es secuencial desde 0 al final del array.


2. Te muestra exclusivamente todos los
datos del array.

El bucle for-each no realiza un seguimiento del índice. 


Diferencias entre == y equals
Ejemplo 1 Ejemplo 2
USAMOS == USAMOS
EQUALS

A
cadena1

b cadena2

Las variables se
Los objetos se almacenan
almacenan en direcciones
en direcciones de
de memoria
memoria
DIFERENTES
IGUALES
MÉTODOS
public int suma(int numero1, int numero2){
int resultado=numero1+numero2;
MÉTODO sin void con Métodos que
return resultado;}
return devuelven un valor

Métodos que no Al definirlo con static, podemos llamar a


MÉTODO CON VOID devuelve ningún la función, pero no podemos
valor instanciarla
Metodos de un objeto
Definimos la clase
public class Sumador {
public int suma(int numero1, int numero2){
int resultado=numero1+numero2;
return resultado;
Definimos el
} método

public static void main(String[] args) {


// TODO Esbozo de método generado automáticamente
Sumador sumaobject=new Sumador(); Creamos un
int rs=sumaobject.suma(12,20); objeto y
System.out.println("el resultado es " + rs); usamos su
}
método
Constructor
import java.util.Scanner;
public class Operarios {
1. En Java podemos definir un private Scanner teclado;
método que se ejecute inicialmente private int[] sueldos;
y en forma automática. Este método
se lo llama constructor. public Operarios(){
2. El constructor tiene las siguientes teclado=new Scanner(System.in);
características: sueldos=new int[5];
3. Tiene el mismo nombre de la clase.
for(int f=0;f<5;f++) {
4. Es el primer método que se ejecuta.
5. Se ejecuta en forma automática. System.out.print("Ingrese valor de la componente:");
6. No puede retornar datos. sueldos[f]=teclado.nextInt(); } }
7. Se ejecuta una única vez.
8. Un constructor tiene por objetivo public void imprimir() {
inicializar atributos. for(int f=0;f<5;f++) {
System.out.println(sueldos[f]); } }
Con el constructor Operarios que public static void main(String[] ar) {
se denomina Operarios op=new Operarios();
Igual que la clase, inicializamos los op.imprimir();
atributos }
}
This

• Hace referencia al objeto actual de la clase, es decir, a una instancia


concreta de la clase y nos sirve para usar los métodos y atributos de
esa clase desde alguno de sus métodos, para llamar a otro de sus
constructores o simplemente para pasarle el objeto completo a algún
otro método u objeto.

Ejemplo

this.nombre = nombre;
this.apellido = apellido;
this.direccion = direccion;
class Persona {
1. Definición
Ejemplo con This
//definimos los String
String nombre; de la clase
String apellido; 1. Definición de la clase (“Persona”)
String direccion;
// Creamos el constructor. 2. Creamos el constructor de la
public Persona(String nombre, String
direccion) {
apellido, String
Clase “Persona”. Usamos super
2. Creamos el
super(); constructor para invocar al constructor,
this.nombre = nombre;
this.apellido = apellido; Usamos this, para hacer
this.direccion = direccion;
} referencia a las variables String.
3. Creamos el
// Definimos el método toSting.
public String toString() { Método
3. Creamos un método que define la
return "Persona = " + nombre + " " + apellido + " - estructura de los datos por consola.
Dir: " + direccion;
} 4. Definimos el método Main, en el
public static void main(String[] args) { que creamos un objeto que instancia
Persona p1 = new Persona("Pepe", "Garcia", "Gran Via
14");
la clase persona y muestra por
System.out.println(p1.toString());
4. Definimos el
pantalla los datos.
} Método Main
}
CONCEPTOS BÁSICOS
• Es el mecanismo en Java por el cual una clase permite heredar las características (atributos y
HERENCIA métodos) de otra clase.
• En el lenguaje de Java, una clase que da la herencia se denomina superclase o clase abstracta.
• La subclase Heredará todas las variables y métodos definidos en la superclase y además agregará
los suyos propios.

EJEMPLO

Creamos una superclase denominada Animal, con sus métodos y atributos.


Superclase Animal

• Creamos una subclase llamada Perro, basada en la superclase Animal, de la


cual hereda métodos y atributos, aparte de tener los suyos propios.
Clase Perro
CLASE ABSTRACT ANIMAL 1 SUBCLASE OVEJA 2

MAIN
EJEMPLO: SUPERCLASE Y ESTRUCTURA CON MAIN

Superclase Animal
Subclase oveja

Lanzador o ejecutor
Main
Super() get set
Super() tiene que estar en la primera línea del Permite mostrar los atributos. Permite modificar el valor de un atributo:
constructor siempre, ya que el constructor al
no ser un método, no puede ser invocado. - El nombre del método siempre será get • El nombre del método siempre
será set
- A continuación el nombre del atributo,
siempre es public (ya que queremos • A continuación el nombre del
mostrar desde fuera la clase) atributo, siempre es public (ya que
queremos modificar desde fuera la
clase)

Super(nombre) en este caso, estamos


haciendo referencia al constructor en la
superclase y al atributo contenido en el.
polimorfismo
• En programación orientada a objetos, polimorfismo es la capacidad que tienen los objetos de una
clase en ofrecer respuesta distinta e independiente en función de los parámetros (diferentes
implementaciones) utilizados durante su invocación

Un ejemplo clásico class Animal {


de poliformismo es el siguiente. public void emitirsonido() {
Podemos crear dos clases distintas: System.out.println("Grr...");
Gato y Perro, que heredan de la }
superclase Animal. }
class Gatos extends Animal {
La clase Animal tiene el método public void emitirsonido() {
abstracto emitirsonido() que se System.out.println("Miau");
implementa de forma distinta en cada }
una de las subclases (gatos y perros }
suenan de forma distinta) class Perro extends Animal {
public void emitirsonido() {
El valor del método emitirsonido en la System.out.println(“Guau");
sub clase gatos será “miau” y en la }
subclase perro “Guau” }
Salir en Java

1.System.exit() para terminar un programa en Java


2.return para salir de una función en Java
3.Break se sale del bloque:
El uso de ventanas de diálogo en Java
•showMessageDialog •INFORMATION_MESSAGE. Icono de
información.
•showInputDialog •WARNING_MESSAGE. Icono de
•showConfirmDialog advertencia.
•showOptionDialog •ERROR_MESSAGE. Icono de error
•QUESTION_MESSAGE. Icono de
pregunta.
ublic class MessageDialog { •PLAIN_MESSAGE. Sin icono
String respuesta =
public static void main(String[] args) { •DEFAULT_OPTION. Sin icono.
JOptionPane.showInputDialog("Escrib
JOptionPane.showMessageDialog(null, "Operación e tu nombre");
realizada correctamente");
}

}
Clase Array import java.util.ArrayList;
ArrayList<String> lista1 = new ArrayList<String>();
La clase ArrayList implementa la lógica
para trabajar con listas genéricas, es decir
lista1.add("juan");
podemos insertar y extraer elementos de
lista1.add("Luis");
cualquier parte de la lista. La diferencia del
lista1.add("Carlos");
ArrayList con la clase LinkedList es la
implementación interna de los algoritmos.
imprimir(lista1);
La clase LinkedList emplea una lista
lista1.add(1, "ana");
doblemente encadenada y la clase
imprimir(lista1);
ArrayList utiliza un arreglo que se
lista1.remove(0);
redimensiona en forma automática según
imprimir(lista1);
se efectúan inserciones y extracciones de
lista1.remove("Carlos");
datos.
imprimir(lista1);
• ADD ES AÑADIR
System.out.println("Cantidad de elementos en la lista:" + lista1.size());
• REMOVE ES ELIMINAR
if (lista1.contains("ana"))
• CONTAIN ES CONTIENE
System.out.println("El nombre 'ana' si esta almacenado en la lista");
• GET ES MOSTRAR
else
• EMPTY COMPRUEBA SI ESTÁ HAY DATOS
System.out.println("El nombre 'ana' no esta almacenado en la lista");
EN EL ARRAY
System.out.println("El segundo elemento de la lista es:" + lista1.get(1));
• CLEAR, ES BORRAR EL ARRAY Y VOLVER
lista1.clear();
AL ESTADO ANTERIOR
if (lista1.isEmpty())
System.out.println("La lista se encuentra vacía");
ACCESO A DATOS
•Gestión de bases de datos relacionales.
•HIBERNATE.

Base de datos embebidas Base de datos externas

La BBDD va incluida dentro de la aplicación, no es externa. MySQL-de Xampp…

SQLite, Oracle Embebed, Firebird …….


Para conectar nuestra base de datos MySQL con una aplicación en
Java En Nuestro ejemplo estamos usando XAMPP, el
servidor Mysql encendido.
API JDBC (Java Database Conectivity
Desde esta web podemos descargarnos el driver MySQL:
https://downloads.mysql.com/archives/community/
Registrar el driver JDBC en nuestro proyecto

1º Pulsamos en propiedades
2º Después en Ruta de construcción Java
3º Añadir JAR externos
4º Y elegimos donde tenemos el fichero mysql-connector java
8.0.18.jar
5º Después pulsamos aplicar y listo.
Sqlite
Las bases de datos embebidas son aquellas bases de datos que Firebird
son incorporadas dentro del software del programa por el H2
desarrollador, de manera que es invisible para el usuario. Este Oracle Embedded
tipo de BBDD no necesita ninguna interfaz externa para Apache Derby
mantener la base de datos. DB4Q
……
CODIGO PARA CONECTAR CON LA BBDD
package bbdd; import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.ResultSet; import java.sql.Statement;
import java.sql.Statement;
public class Conectar{
public static void main(String[] args) {
try  DriverManager.getConnection().
{ Al llamar a getConnection() tendremos que
Class.forName("com.mysql.cj.jdbc.Driver"); pasarle una URL indicando qué base de datos
Connection usaremos, el nombre, el usuario y la contraseña
con=DriverManager.getConnection(
para que pueda acceder a la BBDD.
"jdbc:mysql://localhost:3306/empresa","root","")
;
Statement
stmt=con.createStatement();  la clase Connection.
ResultSet rs=stmt.executeQuery("show
databases;"); Este conectará nuestra aplicación a la base de datos. En el caso
System.out.println("Connected"); que estemos utilizando otro entorno para realizar la conexión,
}
catch(Exception e) se necesitará el nombre del host y el puerto. La sintaxis es la
{ siguiente:
System.out.println(e);
}
} String url=”jdbc:mysql://hostname:port/empresa”;
}
CODIGO PARA MOSTRAR INFORMACIÓN Y CERRAR LA CONEXIÓN

Interfaz Statement
Mediante esta interfaz, se envían las órdenes SQL
individuales a la base de datos a través del Orden SQL JDBC ResultSet
controlador JDBC y se recogen los resultados de las
mismas. Devuelve en un objeto ResultSet el resultado de
una orden simple, normalmente una sentencia SELECT.

• execute(): se usará para ejecutar consultas dinámicas SQL.


• executeUpdate(): se usa cuando hacemos insert, delete o update.
• executeQuery(): se usa para realizar select.
EJEMPLO CREAR UNA CONEXIÓN Y MOSTRAR DATOS
import java.sql.*;
public class EmpresaMain {
public static void main(String[] args) {
//Conexion a la base datos
String jbcUrl = "jdbc:mysql://localhost:3306/empresa?
useSSL=false"; Conexión a BBDD
//Contraseña
String usuario = "root";
//Usuario
String contra = "";
try {
System.out.println("Intentando conectar con la BBDD: " + jbcUrl);
//Paso de parametros de los String declarados a al driver de
conexion
Connection miConexion = DriverManager.getConnection(jbcUrl,
usuario, contra);
System.out.println("Conexion exitosa!!! \n");
Statement stmt = miConexion.createStatement(); //Crea un objeto Sentencia sql uso del objeto ResultSe
para trabajar con cosultas Lo denominamos rs.
String consulta = "select * from emple"; //Consulta a realiar
ResultSet rs = stmt.executeQuery(consulta); //Ejecucion de la
consulta
Creamos un bucle para que muestre todos los
while(rs.next()) { //Bucle de para que recorra toda
Datos de la tabla a consultar.
las filas de la tabla a consultar.
System.out.println(
rs.getInt(1) + " " +
rs.getString(2) + " " + Utilizando el método get, MUESTRA cada
rs.getString(3) + " " + uno de los campos
rs.getInt(4) + " " + Indicamos el tipo de datos y la columna.
rs.getString(5) + " " +
rs.getInt(6) + " " +
rs.getInt(7) + " " +
rs.getInt(8)
); MUY IMPORTANTE CERRAR
} LA CONEXIÓN
miConexion.close(); //Cierre de la consulta, Esto es
obligatorio despues de trabajar con una BD.

}catch(Exception e) {
e.printStackTrace(); //Imprime por consola los
errores que puede tener la conexion o la consulta a
la BD
}
}
}

También podría gustarte