Está en la página 1de 9

Tcnicas de programacin Lenguajes Orientados a Objetos A mediados de los aos 60 se empez a usar las computadoras para la simulacin de problemas

del mundo real. Pero el mundo real est lleno de objetos, en la mayora de los casos complejos, los cuales difcilmente se traducen a los tipos de datos primitivos de los lenguajes imperativos. A El modelo de objetos, y los lenguajes que lo usan, parecen facilitar la construccin de sistemas o programas en forma modular. Los objetos ayudan a expresar programas en trminos de abstracciones del mundo real, lo que aumenta su comprensin. La clase ofrece cierto tipo de modularizacin que facilita las modificaciones al sistema. La reutilizacin de clases previamente probadas en distintos sistemas tambin es otro punto a favor. La posibilidad de reutilizacin del cdigo y sus indispensables modificaciones, se reflejaron en la idea de las jerarquas de herencia de clases. Tambin surgi el concepto de polimorfismo introducido va procedimientos virtuales. Fue en los aos 80 cuando surgieron lenguajes de programacin con conceptos de objetos encabezada por Smalltalk, C++, Eiffel, Modula-3, Ada 95 y terminando con Java. Un lenguaje orientado a objetos es un lenguaje de programacin que permite el diseo de aplicaciones orientadas a objetos. Programacin orientada a objetos la programacin al objeto es modelar y representar, a travs de elementos de programacin, objetos que existen en la realidad (tangible o intangibles). Por ejemplo, un lenguaje en donde se pueda modelar una calculadora con todas las operaciones que pueda realizar. la POO, es una forma de programar que enfatiza descubrir los objetos del mundo real en un contexto particular, simulndolos en objetos computacionales La abstraccin La abstraccin visto desde el punto de vista de la programacin orientada a objetos expresa las caractersticas esenciales de un objeto dentro un contexto en particular, las cuales distinguen al objeto de los dems. Ejemplo: Aplicar abstraccin a las aves El objeto sera el pjaro, y sus caractersticas serian por ejemplo Pico, alas, plumas, patas Funcionalidades: volar, parar, etc. El contexto en el que se analiza al objeto es importante, ya que de ello depender la abstraccion que realicemos. Por ejemplo, la importancia que tiene la cabeza para un psiclogo es muy diferente a la importancia que tiene la cabeza para un peluquero CLASE Una clase es un molde o plantilla para mltiples objetos con caractersticas similares. Las clases comprenden todas las caractersticas de una serie particular de objetos. Diferencia bsica entre clases y objetos. Por ejemplo, si se habla de palmeras, eucaliptos, pinos... de que estamos hablando? de arboles. Entonces podramos contar con una clase rbol que describa las caractersticas de todos los arboles (tienen hojas y races, crecen, crean clorofila, etc.). La clase rbol sirve como un modelo abstracto para el concepto de un rbol; para alcanzar y sujetar, o interactuar con l, o cortarlo tendr que poseer una instancia concreta del mismo. Por supuesto, en cuanto tenga una clase rbol,

puede crear muchas instancias del mismo, y cada diferente instancia puede tener diversas caractersticas (bajo, alto, frondoso, cambia de hojas en el otoo), mientras todava se compone y se reconozca como rbol. Un objeto es una instancia particular de una clase..Un objeto es una instancia particular de u

Un objeto es, por tanto, la representacin en un programa de un concepto, y contiene toda la informacin necesaria para abstraerlo: datos que describen sus atributos y operaciones que pueden realizarse sobre los mismos. Cmo se piensa en objetos? Pensar en trminos de objetos es muy parecido a como lo haramos en la vida real. Por ejemplo vamos a pensar en un coche para tratar de modelizarlo en un esquema de POO. Diramos que el coche es el elemento principal que tiene una serie de caractersticas (atributos), como podran ser el color, el modelo o la marca. Adems tiene una serie de funcionalidades asociadas (mtodos), como pueden ser ponerse en marcha, parar o estacionarse. Pues en un esquema POO el coche seria el nombre general (clase) que utilizamos para referirnos a un conjunto de objetos con las mismas caractersticas y las mismas funcionalidades; los atributos serian las caractersticas como el color o el modelo y los mtodos serian las funcionalidades asociadas como ponerse en marcha o parar. Estos objetos se podrn utilizar en los programas, por ejemplo en un programa de que gestione un taller de coches utilizaras objetos coche. Atributos y Mtodos Ahora bien, cada clase esta, por lo general, compuesta de: Atributos, indican caractersticas comunes de los objetos Mtodos, indican comportamiento similar de los objetos Introduccin a Java Qu es java? JAVA es un lenguaje de programacin creado por SUN Microsystems (http://www.sun.com), Basado en lo que se llama Programacin al Objeto. Lenguaje de programacin orientado a objetos _ Encapsulacin, herencia y polimorfismo _ Interpretado

_ Independiente de la arquitectura y portable Programacin en Java Los programas en Java son archivos de texto planos con extensin .java (se utiliza cualquier Programa que escriba archivos de texto como son el Notepad de Windows, Wordpad, Textpad E inclusive Word cuando guarda en formato texto) que deben ser compilados con una JVM (Java Virtual Machine) y convertidos en un archivo .class, con el cual pueden ser ejecutados

Los archivos .class son binarios, por lo que no se pueden abrir con ningn programa. JRE JRE es el acrnimo de Java Runtime Environment (entorno en tiempo de ejecucin Java) y se corresponde con un conjunto de utilidades que permiten la ejecucin de programas escritos en java sobre distintas plataformas. (Linux, windows, *BSD, Solaris....). El JRE est formado por una JVM (mquina virtual Java) que es el programa que interpreta el cdigo Java y adems por las libreras de clases estndar que implementan el API de Java. Ambas JVM y API deben ser consistentes entre s, de ah que sean distribuidas de forma conjunta. Basta con disponer de la JRE para ejecutar las aplicaciones desarrolladas en Java, mientras que para desarrollar nuevas aplicaciones en dicho lenguaje es necesario un entorno de desarrollo, denominado JDK, que adems del JRE (mnimo imprescindible) incluye, entre otros, un compilador para Java. 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 cdigo neutro que no dependa del tipo de electrodomstico, el cual se ejecutaba sobre una mquina hipottica o virtual denominada Java Virtual Machine (JVM). Era la JVM quien interpretaba el cdigo neutro convirtindolo a cdigo particular de la CPU utilizada. Proporciona las especificaciones de hardware. Lee bytecodes independientes de la plataforma

Versiones Java 2, naci a finales de 1998. Al programar en Java no se parte de cero. Cualquier aplicacin que se desarrolle cuelga en un gran nmero de clases preexistentes. Algunas de ellas las ha podido hacer el propio

usuario, otras pueden ser comerciales, pero siempre hay un nmero muy importante de clases que forman parte del propio lenguaje (el API o Application Programming Interface de Java) La compaa Sun describe el lenguaje Java como simple, orientado a objetos, distribuido, interpretado, robusto, seguro, de arquitectura neutra, portable, de altas prestaciones, multitarea y dinmico. Qu se necesita para programar en java? Es muy necesario utilizar el Java Development Kit (JDK) adecuado para las necesidades que tengas (ejemplo: el JDK 1.7.0). El JDK es un compilador y ejecutor de programas Java a travs de la Java Virtual Machine (JVM) y que es como un computador pero que solo entiende Java. El JDK lo puedes descargar de la pgina oficial de Java de Sun Microsystems (http://java.sun.com). Java SE Development Kit (JDK) Prctica 1: Paso 1: Comprobar que JDKs se tienen instalados: Inicio/Configuracin/Panel de Control/Agregar o Quitar Programas

JDK contiene: JRE (entorno de ejecucin java.exe) Compilador Localizar los Ficheros instalados java.exe (ejecutar, maquina virtual de java) Javac.exe (compilador) Javadoc.exe (generador de documentacin C:\Program Files\Java\jdk1.7.0\bin

Bibliotecas de clases de Java

(packages)

Variables del Sistema: PATH y CLASSPATH PATH : Lista de rutas donde buscar los ejecutables, como los ficheros java.exe, javac.exe, Package lang Clases con funcionalidades bsicas, arrays, cadenas de caracteres, Entrada/salida, excepciones, hilos Package util Utilidades (nmeros aleatorios, vectores, propiedades del sistema) Package net Conectividad y trabajo con redes: sockets, URL Package applet Desarrollo de aplicaciones ejecutables en navegadores Package awt y swing Desarrollo de interfaces grficas de usuario Entornos de Desarrollo Que es IDE? (Integrated Development Enviroment: Entorno de Desarrollo Integrado), que facilita mucho el proceso de crear un programa (editar, compilar y ejecutar) y el proceso de entender un programa. Los principales entornos de desarrollo de java (gratuitos) son: Eclipse (principal sombra de Netbeans) Netbeans (antes de SUN, hoy en da de ORACLE) Jbuilder de Borland Visual J++ de Microsoft Jcreator CREAR CLASES Convenciones sobre el nombre de las clases Debe ser significativo Empezar con mayscula (como un nombre propio) Estar escrito en singular Esta es la sintaxis general para definir a una clase. class <NombreClase> { // Declaracin de atributos <tipo> <variable>; // Declaracin de mtodos <tipo> <nombreMtodo> ( <parmetros> )

{ ... } } Tipos de Datos en Java En Java se definen 2 tipos de datos: Tipos primitivos Tipos referencia Los tipos primitivos son 8 agrupados en cuatro categoras: Lgico: boolean, almacena valores o datos lgicos como true o false. Texto: char, almacena valores o datos caracteres como 'a' Entero: byte, short, int, long, almacena valores numricos enteros. real: float, double, almacena valores numricos reales. Los tipos referencia son solo referencias a otros objetos. En realidad lo que hacemos cuando creamos una clase para modelar objetos, es crear un nuevo tipo de dato objeto, ms conocido como tipos referencia. Como realizar una aplicacion java

Definiremos plan de ejecucin a las lneas que realmente son ledas y ejecutadas cuando uno invoca la clase que desea correr. La ejecucin de un programa en Java es lineal, y comienza SIEMPRE por el bloque de programa escrito dentro del mtodo main. Al momento de ejecutar la clase, el bloque main comienza a Ejecutar. Luego se realizan las llamadas necesarias a cualquier bloque o mtodo. Esta clase la guardaremos en un fichero .java. Es importante que el fichero se llame tal cual llamemos a la clase. Haciendo coincidir tanto maysculas como minsculas. El fichero se llamar: HolaMundo.java public class HolaMundo { public static void main (String [] args) { } } Solo nos quedar mostrar el texto "Hola Mundo" por la consola. Para ello utilizaremos la clase esttica System.out. Esta clase nos permite acceder a la salida de la consola. En concreto usaremos el mtodo println(texto).

Finalmente el cdigo nos quedar de la siguiente forma: public class HolaMundo { public static void main (String [] args) { System.out.println("Hola Mundo"); } } Instrucciones Cada lnea en Java es conocida como una Instruccin, y significa que es lo que uno manda a realizar al computador en un determinado momento. Todas las instrucciones llevan un separador al final: ; (punto y coma). Este separador funciona como si se le indicara al computador DONDE termina una lnea, ya que Java permite que en 1 lnea fsica escribir ms de una instruccin El nombre del archivo Java debe coincidir con el de la clase definida en el <NombreClase>.java Ejercicios JAVA aplicando los operadores vistos en clase y las estructuras de programacin // Programa del promedio de una clase mediante la repeticin controlada por contador. import javax.swing.JOptionPane; /* Para empezar, swing.JOptionPane es una libreria de java, con la cual podemos crear elementos grficos dentro de un form predeterminado*/ public class Promedio1 { public static void main( String args[] ) { int total; // suma de las calificaciones introducidas por el usuario int contadorCalif; // nmero de calificacin a introducir a continuacin int calificacion; // valor de la calificacin int promedio; // promedio de calificaciones int cadenaCalif; // calificacin introducida por el usuario // fase de inicializacin total = 0; // inicializar total contadorCalif = 1; // inicializar contador de ciclo // fase de procesamiento while ( contadorCalif <= 10 ) // iterar 10 veces { // pedir la entrada y leer la calificacin del usuario cadenaCalif = Integer.parseInt( JOptionPane.showInputDialog("Escriba la calificacin como un entero: " )); total = total + calificacion; // sumar calificacion al total contadorCalif = contadorCalif + 1; // incrementar el contador } // fin de instruccin while promedio = total / 10; // divisin de enteros // mostrar el promedio de las calificaciones del examen JOptionPane.showMessageDialog( null, "El promedio de la clase es " + promedio,"Promedio de la clase", JOptionPane.INFORMATION_MESSAGE ); System.exit( 0 ); // terminar el programa

} // fin de main } // fin de la clase Promedio1

// Suma de enteros con la instruccin for. import javax.swing.JOptionPane; public class Suma { public static void main( String args[] ) { int total = 0; // inicializar el total // sumar los enteros pares del 2 al 100 for ( int numero = 2; numero <= 100; numero += 2 ) total += numero; // mostrar el resultado JOptionPane.showMessageDialog( null, "La suma es " + total,"Suma de los enteros pares del 2 al 100",JOptionPane.INFORMATION_MESSAGE ); System.exit( 0 ); // terminar la aplicacin } // fin de main } // fin de la clase Suma

//determinar de 3 nmeros cual es el menor import javax.swing.JOptionPane; public class menor { public static void main(String[] arg) { int a, b, c; a = Integer.parseInt(JOptionPane.showInputDialog("Escriba A: " ) ); b = Integer.parseInt(JOptionPane.showInputDialog("Escriba B: " ) ); c = Integer.parseInt(JOptionPane.showInputDialog("Escriba C: " ) ); if(a<b && a<c) System.out.println("el menor es" + a); else if (b<a && b<c) System.out.println("el menor es" + b); else System.out.println("el menor es" + c); } }

// programa que determina si un AO es bisiesto import javax.swing.JOptionPane; class Bisiesto { public static void main (String args[]) { // Declaracin de variables

int year; boolean bisiesto; // variable que guardar un valor true (verdadero) o false (falso) // Entrada de datos year = Integer.parseInt(JOptionPane.showInputDialog("ingrese ao")); // Clculos bisiesto = ((year%4==0) && (year%100!=0)) || (year%400==0); // si es verdadero guarda en la vble bisiesto el valor (true) // Salida de resultados System.out.println(bisiesto); } } // probar este programa con el 2012 que es un ao bisiesto y con 2011 que no lo es Verificar si un nmero es mltiplo de 5. Un numero es mltiplo de otro, cuando al dividirlos el residuo es 0(divisin exacta) import javax.swing.JOptionPane; // librera para utilizar el JOptionPane Public class Multiplo5 { Public static void main (String arg []) { int valor; valor = Integer.parseInt(JOptionPane.showInputDialog("Escriba el numero entero: " ) ); if(valor % 5 == 0) System.out.println("el numero" + valor +" es mltiplo de 5" ); else System.out.println("el numero" + valor +" NO es mltiplo de 5" ); }

} Bibliotecas de clases de Java (packages)

También podría gustarte