Fundamentos de Lenguaje de Programacin Java Fundamentos de
- Slides: 39
Fundamentos de Lenguaje de Programación Java Fundamentos de Java 1
ORIENTACIÓN A OBJETOS § Tipo abstracto de datos (TAD) § § Modelo conceptual representativo de un conjunto de objetos cuyas características sólo se pueden establecer a través de una colección de operaciones Encapsulamiento § Propiedad que permite reunir datos y operaciones al interior de una estructura única, restringir su acceso y ocultar información Fundamentos de Java 2
ORIENTACIÓN A OBJETOS § Jerarquía § § Propiedad que permite ordenar estructuralmente las abstracciones. Se presenta en las formas de especialización (herencia o relación es-un) y agregación (composición o relación tiene-un) Polimorfismo § Propiedad que permite a una entidad la adopción de múltiples formas. Se presenta en calidad de polimorfismo paramétrico, ad-hoc (sobrecarga) y jerárquico Fundamentos de Java 3
ORIENTACIÓN A OBJETOS § Caracterización § § § Un objeto es un modelo de una entidad concreta o abstracta Objetos de una misma categoría constituyen una clase Un objeto es un ejemplar (instancia) de una clase Los objetos interactúan mediante mensajes Un método (operación) se activa mediante un mensaje enviado al objeto Fundamentos de Java 4
ORIENTACIÓN A OBJETOS § Caracterización § § § Un atributo (dato) es una variable interna mantenida por un ejemplar Los atributos de un objeto representan su estado Los métodos de un objeto determinan su comportamiento (conducta) Un objeto es la combinación de estado y comportamiento Un miembro de una clase puede ser atributo o método Fundamentos de Java 5
ORIENTACIÓN A OBJETOS § Interacción entre objetos Un objeto (emisor) envía un mensaje a otro objeto (receptor) § El mensaje solicita la ejecución de una acción e incluye los datos necesarios para satisfacerla § El receptor que acepta un mensaje debe responder con la ejecución del método que satisface la petición § La clase del receptor determina que método se activa como respuesta a un mensaje § Fundamentos de Java 6
ORIENTACIÓN A OBJETOS § Transporte Jerarquía Mar Aire Dentro. Atmosfera Nieve Fuera. Atmosfera Fundamentos de Java Tierra 1 -Persona n-Personas 7
ORIENTACIÓN A OBJETOS § Equivalencia entre paradigmas § Orientado a objetos § § § Objeto Clase Método Mensaje Jerarquía de clases Fundamentos de Java Procedimental § § § Variable Tipo Procedimiento Llamada Jerarquía de tipos 8
ORIENTACIÓN A OBJETOS § Herencia Todas las clases pertenecen a una estructura jerárquica § Se puede definir una nueva clase a partir de una existente § La nueva clase se denomina subclase o clase derivada § La clase existente se denomina superclase o clase base § Fundamentos de Java 9
ORIENTACIÓN A OBJETOS § Herencia § § § Las subclases heredan tanto los atributos como los métodos de la superclase La herencia es transitiva Una subclase tiene todas las propiedades de la superclase y otras más (extensión) Una subclase constituye una especialización de la superclase (reducción) Un método de superclase es anulado por un método homónimo definido en la subclase Fundamentos de Java 10
ORIENTACIÓN A OBJETOS § Constructores Un constructor es un método especial que tiene el mismo nombre de la clase § El constructor se invoca automáticamente para § crear [e inicializar] un objeto de su clase § inicializar un objeto (recién creado) de su clase § Se provee un constructor sin parámetros cuando se omite ese método en la clase § Un constructor de subclase se ejecuta después que el constructor de su superclase § Fundamentos de Java 11
ORIENTACIÓN A OBJETOS § Constructores § § Los constructores se pueden combinar con la capacidad de sobrecarga (dos o más cuerpos de método con un mismo nombre) Destructores Un destructor es un método especial invocado automáticamente justo antes de la eliminación de un objeto § Un destructor de subclase se ejecuta antes que el destructor de su superclase § Fundamentos de Java 12
CÓDIGOS EN JAVA § Programa Colección de objetos que se comunican entre sí § Conjunto de archivos de clase § § Aplicación § § Programa que incluye una clase con un método llamado main() Applet § Programa que se ejecuta desde un navegador dotando de interactividad a una página Web Fundamentos de Java 13
CÓDIGOS EN JAVA § Servlet § § . java § § Programa que se ejecuta para proveer contenido dinámico desde un servidor Web Archivo que contiene el código fuente de una clase en Java . class § Archivo que contiene el código byte resultante de la compilación del respectivo archivo. java Fundamentos de Java 14
PAQUETES Y PROTECCIÓN DE CLASES § § § La biblioteca de clases java es un conjunto de paquetes jerárquicamente organizados Un paquete contiene clases lógicamente relacionadas y agrupadas bajo un nombre El paquete java. io agrupa las clases que permiten la entrada y salida de datos Un paquete puede contener otros paquetes Un paquete puede ser creado por el usuario Fundamentos de Java 15
PAQUETES Y PROTECCIÓN DE CLASES El nombre completo de una clase consta del nombre de la clase precedido del nombre del paquete, por ejemplo java. lang. System § La protección de una clase determina su relación con las clases de otros paquetes § Se distinguen dos niveles de protección: § De paquete (predeterminado) § Público § Fundamentos de Java 16
IMPORTACIÓN DE CLASES Se puede usar una clase de otro paquete dando su nombre completo o importándola § import java. lang. System permite referirse a la clase System omitiendo java. lang § Para importar un paquete completo se reemplaza el nombre de una clase por un * § import java. lang. * importa todas las clases públicas del paquete java. lang que se usen en un programa § Fundamentos de Java 17
CONTROL DE ACCESO § Existen cuatro niveles y tres modificadores de acceso: De paquete (por omisión) § Público (public) § Privado (private) § Protegido (protected) § § Un miembro declarado sin modificador de acceso es accesible por cualquier clase perteneciente al mismo paquete Fundamentos de Java 18
CONTROL DE ACCESO Un miembro declarado public es accesible por cualquier otra clase o subclase que desee utilizarlo § Un miembro declarado private es accesible sólo por los métodos de su propia clase § Un miembro declarado protected es accesible por cualquier clase del mismo paquete o cualquiera de sus subclases § Fundamentos de Java 19
EXCEPCIONES Una excepción es un evento que impide la continuidad de ejecución de un programa § Las excepciones proporcionan una manera limpia de verificar errores § Se puede capturar y manejar una excepción en un intento por evitar que se detenga la ejecución del programa § Las clases Exception y Error son subclases de la clase Throwable § Fundamentos de Java 20
EXCEPCIONES Exception cubre las fallas recuperables § Error cubre las fallas no recuperables § En un método, el código que podría lanzar (throw) una excepción debe incluirse en un bloque try § Al ocurrir una falla, el método lanza una excepción para que intervenga el bloque catch que la manejará § Fundamentos de Java 21
MIEMBROS ESTÁTICOS Un atributo static se puede utilizar aunque no existan objetos de su clase § Mediante el nombre de su clase, otra clase puede acceder a un atributo public static § Un método static § no tiene referencia this, por lo cual no puede ser invocado por un objeto de su clase § puede acceder a miembros static de su clase, pero no a miembros no static de la misma § Fundamentos de Java 22
TIPOS DE DATOS § Categorías de tipos de datos: § Primitivos Enteros [byte (1 byte), short (2 bytes), int (4 bytes), long (8 bytes) y char (2 bytes)] § Reales [float (4 bytes) y double (8 bytes)] § Lógico [boolean (1 byte)] § § Referenciados Clases § Interfaces § Arreglos § Fundamentos de Java 23
TIPOS DE DATOS § Además, el paquete java. lang proporciona las clases: § § § § Byte Character Short Integer Long Float Double Boolean Fundamentos de Java 24
CONSTANTES SIMBÓLICAS § Una constante simbólica es un dato de algún tipo primitivo, inicializado explícitamente y precedido del calificador final § puede incluir el calificador static § puede definirse como § atributo de clase § local a un método § § definida como local a un método, NO puede ser declarada static Fundamentos de Java 25
CONSTANTES SIMBÓLICAS § Cuando una constante simbólica aparece como atributo de clase mediante final static, sólo se crea una copia de ella para todos los objetos de esa clase § final, se crea una copia de ella para cada objeto de esa clase (poco útil) § Fundamentos de Java 26
VARIABLES § Para acceder a la representación en memoria de variables de tipo primitivo se usa direccionamiento directo § referenciado se usa direccionamiento indirecto § Una variable puede ser atributo (ámbito de clase) o local (ámbito de bloque) § La referencia a un objeto declarado final es una referencia constante a ese objeto § Fundamentos de Java 27
OPERADORES § Aritméticos § § Relacionales § § <, >, <=, >=, !=, == Lógicos § § +, -, *, /, % &&, ||, &, |, !, Unarios § !, ~, -, ++, -- Fundamentos de Java 28
OPERADORES § Sobre bits § § &, |, , <<, >>> De asignación ++, --, =, +=, -=, *=, /=, %= § <<=, >>>, &=, |=, = § § Condicional § ? op 1 ? op 2 : op 3 Fundamentos de Java 29
CREACIÓN DE OBJETOS Una clase es una plantilla para crear objetos § Un objeto se crea con el operador new § Si la memoria disponible para representar el objeto es § suficiente, el operador new retorna una referencia al nuevo objeto § insuficiente, el operador new lanza el error Out. Of. Memory. Error § Fundamentos de Java 30
CONSTRUCTORES La ejecución de un constructor inicializa los atributos de un objeto recién creado § Un constructor implícito asigna los valores § especificados en la declaración § predeterminados por el lenguaje § § Un constructor explícito no puede ser void ni retornar un valor § admite parámetros y puede ser sobrecargado § no puede ser final ni static § Fundamentos de Java 31
ASIGNACIÓN DE OBJETOS El operador de asignación no sirve para copiar un objeto en otro § La semántica de obj 1 = obj 2 es la identidad de los objetos obj 1 y obj 2 § Se puede copiar un objeto en otro mediante § un método exclusivo para ello ó § un constructor de copia § § El constructor de copia permite inicializar un nuevo objeto a partir de otro existente Fundamentos de Java 32
DESTRUCTORES § § § Un destructor es un método único con el nombre predefinido finalize Puede contener sentencias acordes con la desaparición del objeto Por omisión se provee uno implícito Cuando no quedan referencias que apunten a un objeto, éste se transforma en basura La invocación del destructor es automática cuando se recolecta un objeto basura Fundamentos de Java 33
FLUJOS DE E/S ESTÁNDAR § La clase System proporciona tres flujos estándares que se mantienen activos durante la ejecución de un programa: System. in destinado a la entrada de datos por teclado § System. out destinado a la salida de datos por pantalla § System. err destinado a la salida de errores por pantalla § Fundamentos de Java 34
FLUJOS DE E/S ESTÁNDAR Un objeto de la clase Input. Stream. Reader convierte un flujo de bytes en caracteres § La clase Buffered. Reader provee el método read. Line() para leer una línea de texto § Input. Stream. Reader isr = new Input. Stream. Reader(System. in); Buffered. Reader flujo. E = new Buffered. Reader(isr); in § isr flujo. E La clase Print. Stream provee el método println(<arg>) para desplegar <arg> como una línea de texto Fundamentos de Java 35
CLASE Leer public class Leer { public static String dato() { String sdato = ""; try { // Definir un flujo de caracteres de entrada Input. Stream. Reader isr = new Input. Stream. Reader(System. in); Buffered. Reader flujo. E = new Buffered. Reader(isr); sdato = flujo. E. read. Line(); } catch (IOException e) { System. err. println("Error: " + e. get. Message()); } return sdato; } Fundamentos de Java 36
CLASE Leer public static short dato. Short() { try { return Short. parse. Short(dato()); } catch (Number. Format. Exception e) { return Short. MIN_VALUE; } } public static int dato. Int() { try { return Integer. parse. Int(dato()); } catch (Number. Format. Exception e) { return Integer. MIN_VALUE; } } Fundamentos de Java 37
CLASE Leer public static long dato. Long() { try { return Long. parse. Long(dato()); } catch (Number. Format. Exception e) { return Long. MIN_VALUE; } } public static float dato. Float() { try { Float f = new Float(dato()); // Crea un objeto Float return f. float. Value(); // Retorna un valor float } catch (Number. Format. Exception e) { return Float. Na. N; } } Fundamentos de Java 38
CLASE Leer public static double dato. Double() { try { Double d = new Double(dato()); return d. double. Value(); } catch (Number. Format. Exception e) { return Double. Na. N; } } } // Fin de la clase Leer Fundamentos de Java 39
- Secuencia de instrucciones finitas
- Programacin
- Ecuaciones algebraicas
- Lenguaje algebraico a lenguaje comun
- Lenguaje verbal y algebraico
- Expresiones algebraicas 2º eso
- Import java util
- Import java.io.* in java
- Java import java.util.*
- Java interpreter
- Import java.util.*;
- Java thread import
- Java import java.util.*
- Java import java.util.*
- What is rmi and ejb in java
- Java import java.util.*
- Perbedaan antara java swing dan awt adalah
- Swing vs awt
- Random class java
- Import java.awt.event.*;
- Fundamentos
- Fundamentos de composicion
- Fundamentos de la cortina en el baloncesto
- Fundamentos conceituais do teatro
- Fundamentos de la inteligencia de negocios
- Fundamentos de la interculturalidad
- 1 timoteo 3:15
- Que son los fundamentos antropológicos
- Fundamentos de los dividendos
- Fundamentos de la poo
- 4 vs 4 voley
- Fundamentos de la ebi
- Frentes geopolíticos de venezuela
- Turnover basquete
- Fundamentos de la electricidad
- Fundamento pedagogico del curriculum
- Clases de iglecrecimiento
- Fundamentos de una iglesia saludable
- Fundamentos de la planeacion estrategica
- Fundamento de la doctrina social de la iglesia