lunes, 23 de agosto de 2010

Applet


programacion Applet:

Un applet es una clase de Java que corre dentro de un navegador y que no puede hacer referencias a archivos, también posee su interfaz gráfica.

los applet son programas diseñados para ejecutarse como parte de una pagina Web 

La programación del applet se hace bajo un framework que
implementa gran parte de la Graphical User Interface (GUI)

• Las applet poseen limitaciones por razones de seguridad; por ejemplo
no se está permitido manipular archivos locales.

CARACTERISTICAS:

applets redefinen estos 4 métodos:

 
public class Simple extends Applet {
. . .
public void init() { . . . }
public void start() { . . . }
public void stop() { . . . }
public void destroy() { . . . }
. . .
}
– init

• Para inicializar el applet cada vez que se carga o se recargaç
• Suele usarse para operaciones cortas de inicialización (por
ejemplo, cargar imágenes)

– start

• Para comenzar la ejecución del applet: cuando el applet se carga
o cuando se revisita la página web

– stop

• Para detener la ejecución del applet: cuando se abandona la
página web o se cierra el explorador

– destroy

• Para realizar operaciones de limpieza (liberar recursos) antes de
descargar el applet

Para visualizar objetos, los applets pueden redefinir 2 métodos heredados de AWT:

 
 
AWT (Abstract Window Toolkit) es la parte de Java diseñada para crear interfaces de usuario y para dibujar gráficos e imágenes. Es un conjunto de clases que intentan ofrecer al desarrollador todo lo que necesita para crear una interfaz de usuario para cualquier applet o aplicación Java. La mayoría de los componentes AWT descienden de la clase java.awt.Component como podemos 



  paint


• Es el método básico de visualización. Se usa
para dibujar la representación del applet dentro
de la página web.

– update
• Se usa para redibujarel applet
Para reaccionar ante eventos, los applets pueden redefinirse:

– Métodos específicos de manejo del evento
(ejemplo: mouseDown)

 – El método handleEvent.


Swing: es un extenso conjunto de componentes que van desde los más simples, como etiquetas, hasta los más complejos, como tablas, árboles, y documentos de texto con estilo. Casi todos los componentes Swing descienden de un mismo padre llamado JComponent que desciende de la clase de AWT Container. Es por ello que Swing es más una capa encima de AWT que una sustitución del mismo.

A los componentes Swing se les denomina ligeros mientras que a los componentes AWT se les
denominados pesados.

Otros componentes visuales heredados de AWT:


Botones (java.awt.Button)
Checkbox (java.awt.Checkbox)
Campos de texto de una línea (java.awt.TextField)
Áreas de edición más grandes (java.awt.TextArea)
Etiquetas (java.awt.Label)
Listas (java.awt.List)
Listas desplegables (java.awt.Choice)
Sliders y barras de desplazamiento (java.awt.Scrollbar)
Áreas de dibujo (java.awt.Canvas)
Menús (java.awt.Menu, java.awt.MenuItem,
    java.awt.CheckboxMenuItem)
Contenedores (java.awt.Panel, java.awt.Window and its subclasses)



La clase TextField

 

La clase TextField proporciona un editor de texto diseñado para ser usado dentro de los forms. Esta es la principal diferencia con respecto a la clase TextBox. A pesar de esta diferencia, estas dos clases tienen su parecido. De hecho, se puede interactuar con el texto en la clase TextField usando los mismo métodos que se especificaron anteriormente en la clase TextBox. El constructor de la clase TextField es:


TextField(String label, String text, int maxSize, int constraints)

 El primer parámetro establece la etiqueta que se muestra junto al componente y el segundo el texto utilizado para inicializar el elemento. El parámetro maxSize indica el máximo número de caracteres que pueden ser introducidos. El último parámetro, de forma similar a lo indicado para la clase TextBox, indica las restricciones del texto a introducir. Como ya se indicó, los valores
pueden ser:


ANY – No hay limitaciones en el texto
o EMAILADDR – Sólo se puede introducir una dirección de correo
electrónico
o NUMERIC – Sólo se puede introducir un valor entero
o PASSWORD – El texto es protegido para que no sea visible
o PHONENUMBER – Sólo se puede introducir un número de
teléfono
o URL – Sólo se puede introducir una URL


public class Button
 
public class Button
Componente sí se extiende extiende de Componentes
aplicación implementa Accesible Accesible

Esta clase crea un botón. This creación Clase sin Boton. La aplicación puede causar algún tipo de acción que ocurra cuando se pulsa el botón. La Aplicación PUEDE causar Algún Tipo de Acción de Cuando ocurra Que sí Pulsa El Botón. 
 
public class Etiqueta label 
 Componente sí se extiende extiende de Componentes
aplicación implementa Accesible Accesible
Un objeto Label es un componente para colocar texto en un contenedor. Una etiqueta es sin Objeto Componente párr colocar texto contenedor en la ONU. Una etiqueta muestra una sola línea de texto de sólo lectura. El texto puede ser modificado por la aplicación, pero un usuario no puede editarlo directamente. Una Etiqueta Muestra Una Sola Línea de texto de Sólo lectura. El texto Se Puede Cambiar Por la Aplicación, Usuario Pero sin ninguna Directamente PUEDE editarlo.
Por ejemplo, el código. . . Por Ejemplo, el ... Código

     
setLayout (FlowLayout nuevo (FlowLayout.CENTER, 10, 10)); setLayout (FlowLayout nuevo (FlowLayout.CENTER, 10, 10));
     
add (new Label ("Hola !")); añadir (nuevo sello (" Hola !"));
     
add (new Label ("Otra etiqueta")); add (nuevo sello ("Otra Etiqueta"));


 

Java


Tipos de Datos primitivos



Los tipos primitivos son los que permiten manipular valores numéricos (con distintos grados de precisión), caracteres y valores boléanos (verdadero / falso). Los Tipos Primitivos son:
  • boolean: Puede contener los valores true o false.
  • byte: Enteros. Tamaño 8-bits. Valores entre -128 y 127.
  • short: Enteros. Tamaño 16-bits. Entre -32768 y 32767.
  • int: Enteros. Tamaño 32-bits. Entre -2147483648 y 2147483647.
  • long: Enteros. Tamaño 64-bits. Entre -9223372036854775808 y 9223372036854775807.
  • float: Números en coma flotante. Tamaño 32-bits.
  • double: Números en coma flotante. Tamaño 64-bits.
  • char: Caracteres. Tamaño 16-bits. Unicode. Desde '\u0000' a '\uffff' inclusive. Esto es desde 0 a 65535 
  •  
     

    martes, 17 de agosto de 2010

    Programas

     Programa de Primos Relativos



    package Logica;

    public class PrimoRelativo {
         private int dato;
       
        public int getDato() {
            return dato;
        }
       
        public PrimoRelativo() {   
            dato = 0;
        }

        public void setDato(int dato) {
            this.dato = dato;
        }
     
        public PrimoRelativo(int num){
            this.dato = num;
        }
        public void primoRelativo(){
           
        }
       
        public int verificarPrimoRelativo(int b){       
            int divisor=2;   
            while(dato>divisor)
            {   
                if((dato%divisor)==0 && (b%divisor)==0)
                    return (1);
                divisor++;
            }
            return (0);
        }
    }
    ---------------------------------------------------------------------------------------------------------------

    package Presentacion;

    import java.io.BufferedReader;
    import java.io.IOException;
    import java.io.InputStreamReader;

    import Logica.PrimoRelativo;

    public class Formulario {

        public static int leer() throws IOException {
            InputStreamReader entrada =new InputStreamReader(System.in);
            BufferedReader lectura = new BufferedReader(entrada);
            String cadena=lectura.readLine();
            return (Integer.parseInt(cadena));
        }
        public static void digite()
        {
            System.out.println("Digite un numero: ");
        }
        public static void main(String[] args) throws IOException {
            PrimoRelativo obj1, obj2;
            int num1,num2,mayor,menor;
            digite();
            num1=leer();
            digite();
            num2=leer();
            if(num1>num2){
               mayor=num1;
               menor=num2;
               }
            else{
                mayor=num2;
                menor=num1;
                }
            obj1= new PrimoRelativo(mayor);
            obj2= new PrimoRelativo(menor);
            if(obj1.verificarPrimoRelativo(obj2.verificarPrimoRelativo(menor))==0)
            System.out.println("Es un numero Primo relativo");
            else
                System.out.println("No un numero Primo relativo");
        }

    }

    domingo, 15 de agosto de 2010

    INTRODUCCIÓN A JAVA

    JAVA



    Java surgió en 1991 cuando un grupo de ingenieros de Sun Microsystems trataron de diseñar un nuevo lenguaje de programación destinado a electrodomésticos. La reducida potencia de cálculo y memoria de los electrodomésticos llevó a desarrollar un lenguaje sencillo capaz de generar código de tamaño muy reducido.

    Debido a la existencia de distintos tipos de CPUs y a los continuos cambios, era importante conseguir una herramienta independiente del tipo de CPU utilizada. Desarrollaron un código “neutro” que no dependía del tipo de electrodoméstico, el cual se ejecutaba sobre una “máquina hipotética o virtual” denominada Java Virtual Machine (JVM). Era la JVM quien interpretaba el código neutro convirtiéndolo a código particular de la CPU utilizada. Esto permitía lo que luego se ha convertido en el principal lema del lenguaje: “Write Once, Run Everywhere”. A pesar de los esfuerzos realizados por sus creadores, ninguna empresa de electrodomésticos se interesó por el nuevo lenguaje.

    Como lenguaje de programación para computadores, Java se introdujo a finales de 1995. La clave fue la incorporación de un intérprete Java en la versión 2.0 del programa Netscape Navigator, produciendo una verdadera revolución en Internet. Java 1.1 apareció a principios de 1997, mejorando sustancialmente la primera versión del lenguaje. Java 1.2, más tarde rebautizado como Java 2, nació a finales de 1998.

    El principal objetivo del lenguaje Java es llegar a ser el “nexo universal” que conecte a los usuarios con la información, esté ésta situada en el ordenador local, en un servidor de Web, en una base de datos o en cualquier otro lugar.

    La compañía Sun describe el lenguaje Java como “simple, orientado a objetos, distribuido, interpretado, robusto, seguro, de arquitectura neutra, portable, de altas prestaciones, multitarea y dinámico”. Además de una serie de halagos por parte de Sun hacia su propia criatura, el hecho es que todo ello describe bastante bien el lenguaje Java, aunque en algunas de esas características el lenguaje sea todavía bastante mejorable. Algunas de las anteriores ideas se irán explicando a lo largo de este manual.

    LA JAVA VIRTUAL MACHINE O MÁQUINA VIRTUAL


    la existencia de distintos tipos de procesadores y ordenadores llevó a los ingenieros de Sun a la conclusión de que era muy importante conseguir un software que no dependiera del tipo de procesador utilizado. Se planteó la necesidad de conseguir un código capaz de ejecutarse en cualquier tipo de máquina. Una vez compilado no debería ser necesaria ninguna modificación por el hecho de cambiar de procesador o de ejecutarlo en otra máquina. La clave consistió en desarrollar un código “neutro” el cual estuviera preparado para ser ejecutado sobre una máquina hipotética o virtual”, denominada Java Virtual Machine (JVM). Es esta JVM quien interpreta este código neutro convirtiéndolo a código particular de la CPU utilizada. Se evita tener que realizar un programa diferente para cada CPU o plataforma. 

    La JVM es el intérprete de Java. Ejecuta los “bytecodes” (ficheros compilados con extensión *.class) creados por el compilador de Java (javac.exe). Tiene numerosas opciones entre las que destaca la posibilidad de utilizar el denominado JIT (Just-In-Time Compiler), que puede mejorar entre 10 y 20 veces la velocidad de ejecución de un programa.

    JDK

    La creación de un programa en Java, ya sean applets o aplicaciones convencionales, necesita la instalación de las herramientas de desarrollo de Java. El Kit de Desarrollo de Java (JDK) es una donación de Sun Mycrosystem a la que podemos acceder visitando el sitio que posee Sun en la Red. Como JDK es gratuito y las versiones que se pueden bajar de la Red están actualizadas, es muy frecuente su uso por los programadores, no obstante la existencia de los entornos de desarrollo integrados que pretenden facilitar las tareas de edición, compilación, ejecución y depuración, haciendo todas ellas directamente accesibles desde los mismos.

    EL ENTORNO DE DESARROLLO DE JAVA

    Existen distintos programas comerciales que permiten desarrollar código Java. La compañía Sun, creadora de Java, distribuye gratuitamente el Java(tm) Development Kit (JDK). Se trata de un conjunto de programas y librerías que permiten desarrollar, compilar y ejecutar programas en Java. Incorpora además la posibilidad de ejecutar parcialmente el programa, deteniendo la ejecución en el punto deseado y estudiando en cada momento el valor de cada una de las variables (con el denominado Debugger). Cualquier programador con un mínimo de experiencia sabe que una parte muy importante (muchas veces la mayor parte) del tiempo destinado a la elaboración de un programa se destina a la detección y corrección de errores. Existe también una versión reducida del JDK, denominada JRE (Java Runtime Environment) destinada únicamente a ejecutar código Java (no permite compilar).

    Los IDEs (Integrated Development Environment), tal y como su nombre indica, son entornos de desarrollo integrados. En un mismo programa es posible escribir el código Java, compilarlo y ejecutarlo sin tener que cambiar de aplicación. Algunos incluyen una herramienta para realizar Debug gráficamente, frente a la versión que incorpora el JDK basada en la utilización de una consola (denominada habitualmente ventana de comandos de MS-DOS, en Windows NT/95/98) bastante difícil y pesada de utilizar. Estos entornos integrados permiten desarrollar las aplicaciones de forma mucho más rápida, incorporando en muchos casos librerías con componentes ya desarrollados, los cuales se incorporan al proyecto o programa. Como inconvenientes se pueden señalar algunos fallos de compatibilidad entre plataformas, y ficheros resultantes de mayor tamaño que los basados en clases estándar.

    sábado, 7 de agosto de 2010

    Conceptos basicos

    Objeto: 



    Una estructura de datos y conjunto de procedimientos que operan sobre dicha estructura. Una definición más completa de objeto es: una entidad de programa que consiste en datos y todos aquellos procedimientos que pueden manipular aquellos datos; el acceso a los datos de un objeto es solamente a través de estos procedimientos, únicamente estos procedimientos pueden manipular, referenciar y/o modificar estos datos.

    Para poder describir todos los objetos de un programa, conviene agrupar éstos en clases.

    Clase: 



    Podemos considerar una clase como una colección de objetos que poseen características y operaciones comunes. Una clase contiene toda la información necesaria para crear nuevos objetos.

    Encapsulación: 

    Es una técnica que permite localizar y ocultar los detalles de un objeto. La encapsulación previene que un objeto sea manipulado por operaciones distintas de las definidas. La encapsulación es como una caja negra que esconde los datos y solamente permite acceder a ellos de forma controlada.

    Las principales razones técnicas para la utilización de la encapsulación son:

    1) Mantener a salvo los detalles de representación, si solamente nos interesa el comportamiento del objeto.
    2) Modificar y ajustar la representación a mejores soluciones algorítmicas o a nuevas tecnologías de software.

    Abstracción: 
     

    En el sentido mas general, una abstracción es una representación concisa de una idea o de un objeto complicado. En un sentido mas especifico, la abstracción localiza y oculta los detalles de un modelo o diseño para generar y manipular objetos.

    Una abstracción tiene un significado más general que la encapsulación, pudiendo hablar de abstracción de datos en lugar de encapsulación de datos.

    Como resumen de los 3 conceptos expuestos anteriormente podemos decir que:


    1) Los objetos son encapsulaciones de abstracciones en la POO.
    2) La unidad de encapsulación en la POO es el objeto. 

    Una clase es un tipo: Un objeto es una instancia de ese tipo. Además, la clase es un concepto estático: una clase es un elemento reconocible en el texto del programa.

    Objetos: Un objeto es una entidad lógica que contiene datos y un código que manipula estos datos; el enlazado de código y de datos, de esta manera suele denominarse encapsulación.
    Cuando se define un objeto, se esta creando implícitamente un nuevo tipo de datos.


    Polimorfismo: 



    Significa que un nombre se puede utilizar para especificar una clase genérica de acciones.

    Herencia:




    La herencia es un proceso mediante el cual un objeto puede adquirir las propiedades de otro objeto.