Java
Primeros pasos con Java
8 abr
¿Qué es JAVA?
Java es un lenguaje de programación multiplataforma (capaz de ser ejecutado en diferentes equipos con diferentes sistemas operativos).
Java utiliza todas las ventajas del lenguaje C (principal lenguaje de programación utilizado para crear la mayoría de programas que utilizamos), e incorpora otras nuevas como es la Programación Orientada a Objetos.
Cuando programamos en Java, y generamos código ejecutable o también llamado bitecodes, este código es pseudointerpretado, es decir no contienen las instrucciones propias del procesador, sino que tiene instrucciones interpretadas por la Maquina Virtual Java, que convierte estas instrucciones en las instrucciones propias de cada arquitectura o procesador.
¿Que es la Programación Orientada a Objetos?
La programación como tal, puede entenderse como una sucesión de instrucciones, existen múltiples instrucciones:
- Movimiento de datos.
- Aritmética.
- Operaciones de control de programas.
- Operaciones lógicas.
- Desplazamientos y rotaciones.
- Operaciones de control del sistema.
Pero para una programación mucho mas enriquecida, tales como estructuras de datos, nos ayuda mucho tener uso de Objetos.
Un Objeto es una estructura formada por:
- Espacios de memoria destinadas a datos (propiedades del objeto=>variables).
- Espacios de memoria destinados a instrucciones (métodos del objeto=>funciones).
- Capacidad de heredar unos de otros, esto permite que definamos un nuevo objeto que ya cuenta con métodos y propiedades definidas anteriormente, estas pueden ser nuevamente redefinidas.
- Las propiedades de los objetos pueden ser a su vez objetos.
Por ejemplo, supongamos que tenemos que llevar el registro de artículos de una tienda, cada articulo tiene unas propiedades inherentes, tales como el precio, los artículos también tienen metodos o acciones que se les realizan sobre ellos mismos, como por ejemplo: rebajar(cantidad), esto haría que el precio del articulo se reduciese a la cantidad.
Supongamos que tenemos un almacén, por lo que tendremos que hacer una lista de artículos, es decir un objeto que contiene a otros objetos.
En Java se llaman Clases, para este ejemplo lo escribiremos un poco en código idealizado, pero que hará una idea de como se programa en Java.
Articulo:
class Articulo{
int precio;
public void rebajar(int cantidad){
precio=precio-cantidad;
}
}
Almacen:
class almacen{
Lista articulos;
public void añadir(Articulo articulo){
articulos.add(articulo);
}
}
¿Que necesito para empezar a programar?
En principio existen unas herramientas propias para el desarrollo llamadas JDK, pero como somos principiantes, nos iremos por el camino fácil.
Yo utilizo NetBeans, y desde la propia pagina de descarga del JDK http://java.sun.com/javase/downloads/index.jsp podemos encontrar uno de los enlaces que contiene directamente el NetBeans (JDK XX with NetBeans XX), si tenemos el JDK instalado ya, instalaremos simplemente NetBeans, en http://netbeans.org/downloads/index.html hay muchas versiones y en múltiples idiomas, yo aconsejo descargar en Español y la versión básica Java SE, pero si queremos hacer programas para móviles necesitamos la versión Java.
¿Mi primer programa?
Para ello ejecutamos el programa NetBeans, y hacemos click en Archivo -> Proyecto Nuevo, en la ventana marcamos Java y Aplicación Java.
Presionamos Siguiente y rellenamos el nómbre del proyecto y su ubicación y finalizar.
Nos debe salir un código como el siguiente, “he borrado todo aquello que no sirve (comentarios)”
package javaapplication1;
public class Main {
public static void main(String[] args) {
// TODO code application logic here
}
}
Bien toda aplicación Java de escritorio inicia su código en el método public static void main(String[] args).
dónde args es un Array que contiene los parámetros de inicio del programa.
por lo que donde pone // TODO code application logic here, ponemos System.out.println(“Hola mundo”);
package javaapplication1;
public class Main {
public static void main(String[] args) {
System.out.println(“Hola mundo”);
}
}
Al ejecutar el programa (botón verde de Play) obtenemos la siguientes lineas:
run:
Hola mundo
GENERACIÓN CORRECTA (total time: 0 seconds)
Ya tenemos nuestro primer programa.
JavaScript CountDown
15 nov
Crear tu cuenta atrás en JavaScript
javaScript countdown/count-up code (copy and paste to your Web page):
TargetDate = "12/31/2020 5:00 AM";BackColor = "palegreen";ForeColor = "navy";CountActive = true;CountStepper = -1;LeadingZero = true;DisplayFormat = "%%D%% Days, %%H%% Hours, %%M%% Minutes, %%S%% Seconds.";FinishMessage = "It is finally here!";
//countdown.js file//
/*Author: Robert Hashemianhttp://www.hashemian.com/
You can use this code in any manner so long as the author'sname, Web address and this disclaimer is kept intact.********************************************************Usage Sample:
TargetDate = "12/31/2020 5:00 AM";BackColor = "palegreen";ForeColor = "navy";CountActive = true;CountStepper = -1;LeadingZero = true;DisplayFormat = "%%D%% Days, %%H%% Hours, %%M%% Minutes, %%S%% Seconds.";FinishMessage = "It is finally here!";
*/
function calcage(secs, num1, num2) { s = ((Math.floor(secs/num1))%num2).toString(); if (LeadingZero && s.length < 2) s = "0" + s; return "" + s + "";}
function CountBack(secs) { if (secs < 0) { document.getElementById("cntdwn").innerHTML = FinishMessage; return; } DisplayStr = DisplayFormat.replace(/%%D%%/g, calcage(secs,86400,100000)); DisplayStr = DisplayStr.replace(/%%H%%/g, calcage(secs,3600,24)); DisplayStr = DisplayStr.replace(/%%M%%/g, calcage(secs,60,60)); DisplayStr = DisplayStr.replace(/%%S%%/g, calcage(secs,1,60));
document.getElementById("cntdwn").innerHTML = DisplayStr; if (CountActive) setTimeout("CountBack(" + (secs+CountStepper) + ")", SetTimeOutPeriod);}
function putspan(backcolor, forecolor) { document.write("");}
if (typeof(BackColor)=="undefined") BackColor = "white";if (typeof(ForeColor)=="undefined") ForeColor= "black";if (typeof(TargetDate)=="undefined") TargetDate = "12/31/2020 5:00 AM";if (typeof(DisplayFormat)=="undefined") DisplayFormat = "%%D%% Dias, %%H%%:%%M%%,%%S%%";if (typeof(CountActive)=="undefined") CountActive = true;if (typeof(FinishMessage)=="undefined") FinishMessage = "";if (typeof(CountStepper)!="number") CountStepper = -1;if (typeof(LeadingZero)=="undefined") LeadingZero = true;
CountStepper = Math.ceil(CountStepper);if (CountStepper == 0) CountActive = false;var SetTimeOutPeriod = (Math.abs(CountStepper)-1)*1000 + 990;putspan(BackColor, ForeColor);var dthen = new Date(TargetDate);var dnow = new Date();if(CountStepper>0) ddiff = new Date(dnow-dthen);else ddiff = new Date(dthen-dnow);gsecs = Math.floor(ddiff.valueOf()/1000);CountBack(gsecs);
Descomprimir un archivo Zip en Java
15 nov
Descomprimir archivos comprimidos Zip usando las librerías nativas de java.
import java.io.*;import java.util.zip.*;
public class UnZip {
final int BUFFER = 2048;
public static void main (String argv[]) {
try {
BufferedOutputStream dest = null;
FileInputStream fis = new FileInputStream(argv[0]);
ZipInputStream zis = new ZipInputStream(new BufferedInputStream(fis));
ZipEntry entry;
while((entry = zis.getNextEntry()) != null) {
System.out.println("Extracting: " +entry);
int count;
byte data[] = new byte[BUFFER];
// write the files to the disk
FileOutputStream fos = new FileOutputStream(entry.getName());
dest = new BufferedOutputStream(fos, BUFFER);
while ((count = zis.read(data, 0, BUFFER)) != -1) {
dest.write(data, 0, count);
}
dest.flush();
dest.close();
}
zis.close();
} catch(Exception e) {
e.printStackTrace();
}
}}
Crear un archivo Zip en Java
15 nov
Como crear archivos comprimidos Zip usando las librerías nativas de Java.
// These are the files to include in the ZIP file
String[] filenames = new String[]{"filename1", "filename2"};
// Create a buffer for reading the files
byte[] buf = new byte[1024];
try {
// Create the ZIP file
String outFilename = "outfile.zip";
ZipOutputStream out = new ZipOutputStream(new FileOutputStream(outFilename));
// Compress the files
for (int i=0; i
FileInputStream in = new FileInputStream(filenames[i]);
// Add ZIP entry to output stream.
out.putNextEntry(new ZipEntry(filenames[i]));
// Transfer bytes from the file to the ZIP file
int len;
while ((len = in.read(buf)) > 0) {
out.write(buf, 0, len);
}
// Complete the entry
out.closeEntry();
in.close();
}
// Complete the ZIP file
out.close();
} catch (IOException e) {
}
Hilos en Java
15 nov
Los hilos son lineas de ejecución que queremos que sean ejecutadas concurrentemente para que no bloqueen la linea de ejecución central.
//Proceso principal
Thread hilo = new Thread(){
public void run ()
{
//Ejecuta linea de ejecución concurrente.
}
};
hilo.start();
//Continuación de la ejecución del proceso principal sin quedarse bloqueado por el hilo.


