La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Programación Orientada a Objetos

Presentaciones similares


Presentación del tema: "Programación Orientada a Objetos"— Transcripción de la presentación:

1 Programación Orientada a Objetos
MC Beatriz Beltrán Martínez Verano 2018

2 Historia La tecnología Java se creó como una herramienta de programación para ser usada en un proyecto de set-top-box en una pequeña operación denominada «the Green Project» en Sun Microsystems en el año 1991. El lenguaje se denominó inicialmente Oak (por un roble que había fuera de la oficina de Gosling), luego pasó a denominarse Green tras descubrir que Oak era ya una marca comercial registrada para adaptadores de tarjetas gráficas y finalmente se renombró a Java. El término Java fue acuñado en una cafetería frecuentada por algunos de los miembros del equipo. FCC - BUAP Verano 2018 BBM

3 file.java //en UNIX, Windows, Linux
Preliminares Todo programa en lenguaje JAVA debe tener la siguiente extensión: file.java //en UNIX, Windows, Linux Comentarios en JAVA /* Este es un comentario */ /* Este también es un comentario multilíneas */ // comentario unilineal FCC - BUAP Verano 2018 BBM

4 Programa Principal Todas las aplicaciones deben tener un main.
public static void main(String args[]) es la forma de definir. Las llaves { } denotan el cuerpo del programa. Toda declaración termina con un punto y coma (“;”). La sintaxis es muy parecida a la del lenguaje C. FCC - BUAP Verano 2018 BBM

5 JAVA Es un lenguaje simple, orientado a objetos, distribuido, interpretado, robusto, seguro, de arquitectura neutra, portable, de alto desempeño, de hilos múltiples y dinámico. Es un lenguaje de programación orientado a objetos. Como los programas de Java se compilan en un formato de bytecode (código de bytes) de arquitectura neutral, una aplicación de Java se puede ejecutar en cualquier sistema, siempre y cuando dicho sistema instrumente la máquina virtual de Java. FCC - BUAP Verano 2018 BBM Hilo que es?

6 Careacterísticas El compilador no compila para la plataforma de origen, sino para una plataforma abstracta llamada máquina virtual de Java, o JVM-Java Virtual Machine. Características: Lenguaje Distribuido. Robusto y confiable. Carencia de apuntadores. Seguro. De hilos múltiples. FCC - BUAP Verano 2018 BBM

7 Características Simplicidad. Java no posee aritmética de punteros.
No se necesita hacer delete. No hay herencia múltiple. Independiente de Plataforma. La independencia de la plataforma es la capacidad del programa de trasladarse con facilidad de un sistema computacional a otro. A nivel de código fuente, los tipos primitivos de datos Java, tiene tamaños consistentes, en todas las plataformas de desarrollo. Los archivos binario Java, se encuentran en una forma llamada bytecode. FCC - BUAP Verano 2018 BBM

8 Características Intérprete JAVA Compilador JAVA Código JAVA ByteCode
FCC - BUAP Verano 2018 Pentium Power PC SPARC Código JAVA Compilador JAVA ByteCode JAVA Intérprete JAVA BBM

9 Características Seguridad.
La seguridad es un aspecto importante en Java, el visualizador baja el código de toda la red y lo ejecuta en el anfitrión del usuario. El propio lenguaje Java incluye restricciones cerradas de acceso a memoria. Una rutina de verificación de códigos de byte en el intérprete de Java verifica que los códigos de byte (Bytecodes) no violen ninguna construcción del lenguaje. FCC - BUAP Verano 2018 BBM Una verificación del nombre de la clase y de las restricciones de acceso sobre la carga. Al nivel de acceso del archivo, si un código de byte intenta el acceso a un archivo para el que no tiene permiso, aparecerá una caja de diálogo para permitir que el usuario continúe o detenga la ejecución. Al nivel de red, se tendrán opciones para emplear codificación de clave pública y otras técnicas de encriptación para verificar la fuente del código y su integridad

10 Características Flexibilidad.
Java combina flexibilidad, robustez y legibilidad gracias a una mezcla de chequeo de tipos durante la compilación y durante la ejecución. En Java se pueden tener punteros a objetos de un tipo específico y también se pueden tener apuntadores a objetos de cualquier tipo. El programador usa entonces apuntadores de tipo específico en la mayoría de los casos con el fin de ganar legibilidad y en unos pocos casos usa apuntadores a tipos desconocidos cuando necesita tener flexibilidad. FCC - BUAP Verano 2018 BBM

11 Características Administración automática de memoria.
En Java los programadores no necesitan preocuparse de liberar un trozo de memoria cuando ya no lo necesitan. Es el recolector de basuras el que determina cuando se puede liberar la memoria ocupada por un objeto. El impacto que un recolector de basura en el tiempo de desarrollo y en la confiabilidad del software resultante es muchos más importante que la pérdida en eficiencia. FCC - BUAP Verano 2018 BBM

12 Hola Mundo Una aplicación es un programa convencional que se invoca desde el intérprete de comandos. Este programa se carga directamente desde el disco y no de la red Internet. Crear un archivo llamado Hello1.java con: // La aplicación Hello World! public class Hello1 { public static void main (String args[]) { System.out.println("Hello World!"); } FCC - BUAP Verano 2018 BBM

13 Hola Mundo Un applet es un programa que anima una porción de una página Web. Se recupera a partir de la red y corre en la máquina del usuario, pero con muchas restricciones. Crear el programa fuente Hello2.java con: import java.awt.Graphics; import java.applet.Applet;   public class Hello2 extends Applet { public void paint(Graphics g) { g.drawString("Hello world!", 50, 25); } FCC - BUAP Verano 2018 BBM

14 Hola Mundo Crear la página Hello.html con el siguiente contenido:
<body> Este es un applet: <applet code="Hello2.class" width=150 height=25> </applet> </body> </html> FCC - BUAP Verano 2018 BBM

15 Hola Mundo Hello.html debe estar en el mismo directorio que Hello2.java. Ver el applet con: appletviewer Hello.html Dado que un applet no se invoca desde el intérprete de comandos, no tiene sentido definir el método main. El browser Web notifica al applet que debe dibujar su contenido invocando el método paint. Esto ocurre cada vez que se muestra la porción de la página html que contiene este applet. Por lo tanto un applet debe definir el método paint (en vez de main). FCC - BUAP Verano 2018 BBM

16 Control de acceso Cada nivel de privilegio de acceso de métodos y variables está asociado con una palabra clave: private public protected Cada declaración contenida en el cuerpo de una clase define de manera implícita un privilegio de acceso apareciendo en una sección precedida de una de estas tres palabras clave. Si no se utiliza ninguna de esas palabras, todo es protected por omisión. FCC - BUAP Verano 2018 BBM

17 Operador this Nunca se puede llamar a una función de instancia de una clase a menos que se asocie con un objeto (una instancia de la clase). El método utilizado por Java es añadir un argumento extra oculto a las funciones miembro. Este argumento es un puntero al objeto de la clase que lo enlaza con la función asociada y recibe un nombre especial denominado this. FCC - BUAP Verano 2018 BBM

18 Herencia Es el proceso por medio del cual, un Objeto puede adquirir las propiedades de otro objeto. La importancia de la herencia se basa en que constituye un mecanismo que soporta la clasificación. La herencia solo puede ser simple. FCC - BUAP Verano 2018 BBM

19 Ejemplo de Herencia class A { // Clase abuela A protected int value_a; // Variable protegida } class B extends A { // Clase que hereda de la clase abuela A public void FB(); class C extends B { // Clase que hereda de clase derivada B public void FC(); FCC - BUAP Verano 2018 BBM

20 Polimorfismo (Sobrecarga de Constructores)
En Java, dos o más funciones pueden tener el mismo nombre, variando solamente en los parámetros de su declaración. También los constructores pueden ser sobrecargados, simplemente debemos declarar las diferentes formas que deberá tomar, y definir su acción relativa a cada una de ellas. FCC - BUAP Verano 2018 BBM

21 Sobrecarga de funciones
Un mecanismo de Polimorfismo en un lenguaje de programación, lo constituye la sobrecarga de funciones. En Java, dos o más funciones pueden tener el mismo nombre, difiriendo solamente en los parámetros de su declaración. Las funciones que comparten nombre, pero que declaran parámetros diferentes, se dicen que están Sobrecargadas. FCC - BUAP Verano 2018 BBM


Descargar ppt "Programación Orientada a Objetos"

Presentaciones similares


Anuncios Google