SlideShare una empresa de Scribd logo
1 de 18
Curso Básico de Java Facilitador: Prof. Bassam Asfur Republica Bolivariana de Venezuela Área de Computación
El paquete java.io Los streams. Cualquier programa realizado en Java que necesite llevar a cabo una operación de I/O lo hará a través de un  stream. Un stream, cuya traducción literal es "flujo", es una abstracción de  todo aquello que produzca o consuma información.  Podemos ver a este stream como una entidad lógica. La vinculación de este stream al dispositivo físico la hace el sistema de entrada y salida de Java. Se ve pues la eficacia de esta implementación pues las clases y métodos de I/O que necesitamos emplear son las mismas independientemente del dispositivo con el que estemos actuando, luego, el núcleo de Java, sabrá si tiene que tratar con el teclado, el monitor, un sistema de archivos o un socket de red liberando a nuestro código de tener que saber con  quién está interactuando.
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],El paquete java.io
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],El paquete java.io
La entrada de consola, se obtiene a través de la instrucción  System.in. Para conseguir un flujo de caracteres envolvemos dicha clase en un objeto del tipo  BufferedReader, el cual  soporta un flujo de entrada del buffer. Atendiendo a las especificaciones de esta clase, el parámetro que se le pasa es el stream de entrada que es de tipo  Reader, el cual  es abstracto por lo que recurriremos a  una de sus subclases, en nuestro caso será  InputStreamReader que convierte bytes a  caracteres.  Otra vez más, atendiendo a la especificación de esta última clase vemos que el parámetro que se le pasa es de tipo  InputStream, o sea, la entrada orientada a byte que en  nuestro caso es System.in, ya hemos asociado un dispositivo físico (el teclado) a un stream orientado a caracteres mediante la clase System con la clase  BufferedReader Lectura de consola. BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
Definición La Herencia es el mecanismo por el que se crean nuevos objetos definidos en términos de objetos ya existentes. Por ejemplo, si se tiene la clase Pelota, se puede crear la subclase  Pelota_Futbol, que es una especialización de  Pelota. class  Pelota_Futbol  extends  Pelota{  String color; int diametro;  }  La palabra clave extends se usa para generar una subclase (especialización) de un objeto. Pelota_Futbol es una subclase de  Pelota. Cualquier cosa que contenga la definición de Pelota será copiada a la clase Pelota_Futbol. Pero, además de heredar la funcionalidad de la clase padre, una clase hija puede sobreescribirla.  Herencia en Java
Herencia en Java
Herencia en Java ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
class Padre { String nombre, edad; public void mover() { System.out.println("Funcion implmetado en el padre"); } } class Hijo extends Padre { String madre; public void mover() { super.mover(); System.out.println("Funcion implemetado en el hijo"); } } public class Ejemplo{ public static void main(String[] args) { Hijo Alejandro= new Hijo(); Alejandro.mover(); } } Ejemplo Herencia
Interfases y Clases Abstractas.  Clases Abstractas.  Al ser utilizado Herencias y/o Polimorfismo es muy común que en la Clase Base existan métodos diseñados únicamente con el propósito de ofrecer una guia para las Clases heredadas, en Java existe un vocablo que permite prohibir el uso de métodos en Clases Base, este calificativo es :  abstract .  Al ser definido un método como  abstract  se restringe que éste sea llamado directamente, cuando una Clase contiene un método de este tipo a ésta se le llama:  Clase Abstracta . Una de las características de las Clases que Heredande una Clase abstracta, es que éstas deben definir los mismos métodos definidos en la Clase Base.
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Clases Abstractas.
Definición: Un interface es una colección de definiciones de métodos (sin implementaciones) y de  valores constantes. Los interfaces se utilizan para definir un protocolo de comportamiento que puede ser implementado por cualquier clase del árbol de clases. En Java, un interface es un tipo de dato de referencia, y por tanto, puede utilizarse en cualquier parte del código. Interface
Interface Una Interfase básicamente no indica que todas las Clases que  implementen  esta Interfase deben contener su misma estructura,  para definir una Interfase se utiliza el vocablo interface y para especificar que una Clase debe utilizar determinada Interfase se utiliza el vocablo implements.  Una característica especifica de Interfases que no es posible a través de Clases Abstractas es el uso de Herencias Múltiples, este concepto reside en diseñar Clases que adoptan el comportamiento de más de una Clase  class Clase_Hijo  extends Clase_Padre implements Interface1, Interface2, Interface3{ … }
interface Instrumento { // Constante al compilar, automáticamente static y final  int i = 5; // Métodos Automáticamente Públicos  void tocar(); String tipo(); void afinar(); } class Guitarra implements Instrumento { public void tocar() { System.out.println("Guitarra.tocar()"); } public String tipo() { return "Guitarra"; } public void afinar() {} } Interface (Ejemplo)
El polimorfismo es un concepto de la programación orientada a objetos que nos permite programar en forma general, en lugar de hacerlo en forma específica. En general nos sirve para programar objetos con características comunes y que todos estos compartan la misma superclase en una jerarquía de clases, como si todas fueran objetos de la superclase. Esto nos simplifica la programación.  Ejemplo Polimorfismo Sumar Sumar(4,6); Sumar(4.5,6.5); Sumar(‘e’,’t’);
class Hijo2 extends Padre { String Ruta; public void mover() { System.out.println("La funcion del Hijo 2"); } } class Ejemplo4{ public static void Ejecutar(Padre m) { m.mover(); } public static void main(String[] args) { Hijo  jose= new  Hijo(); Hijo2  anibal = new Hijo2(); Ejecutar(jose); Ejecutar(anibal); } } Ejemplo Polimorfismo
public class Ejemplo{ int i; public Ejemplo() { i = 10; } // Este constructor establece el valor de i public Ejemplo( int valor ) { this.i = valor; // i = valor } public void Suma_a_i( int j ) { i = i + j; } } Al acceder a variables de instancia de una clase, la palabra clave this hace referencia a los miembros de la propia clase en el objeto actual; es decir, this se refiere al objeto actual sobre el que está actuando un método determinado y se utiliza siempre que se quiera hace referencia al objeto. Operador This
Operador super class Clase{ void  imprimir(){ System.out.println("Funcion Padre"); } } class Nueva_Clase extends Clase{ void imprimir(){ super.imprimir(); } } class Ejemplo { public static void main(String []y){ new Nueva_Clase().imprimir(); } } Si se necesita llamar al método padre dentro de una clase que ha reemplazado ese método, se puede hacer referencia al método padre con la palabra clave super: Si un método sobrescribe un método de su superclase, se puede utilizar la palabra clave super para eludir la versión sobrescrita de la clase e invocar a la versión original del método en la supreclase.

Más contenido relacionado

La actualidad más candente

La actualidad más candente (16)

Programación 3: Clases y objetos en Java
Programación 3: Clases y objetos en JavaProgramación 3: Clases y objetos en Java
Programación 3: Clases y objetos en Java
 
LibreríAs De Java
LibreríAs De JavaLibreríAs De Java
LibreríAs De Java
 
Curso Java Inicial 2 - Introducción y Sintaxis
Curso Java Inicial  2 - Introducción y SintaxisCurso Java Inicial  2 - Introducción y Sintaxis
Curso Java Inicial 2 - Introducción y Sintaxis
 
Clase n°1 java
Clase n°1 javaClase n°1 java
Clase n°1 java
 
Introduccion java
Introduccion javaIntroduccion java
Introduccion java
 
Fundamentos de Java
Fundamentos de JavaFundamentos de Java
Fundamentos de Java
 
Fundamentos de Java II
Fundamentos de Java IIFundamentos de Java II
Fundamentos de Java II
 
Tipos de datos
Tipos de datosTipos de datos
Tipos de datos
 
JAVA- basico
JAVA- basicoJAVA- basico
JAVA- basico
 
Programación orientada a objetos (I)
Programación orientada a objetos (I)Programación orientada a objetos (I)
Programación orientada a objetos (I)
 
Datos Previos
Datos PreviosDatos Previos
Datos Previos
 
Comandos java
Comandos javaComandos java
Comandos java
 
Datos Previos
Datos PreviosDatos Previos
Datos Previos
 
Constructor Y Destructor
Constructor Y DestructorConstructor Y Destructor
Constructor Y Destructor
 
Fundamentos de programación Java
Fundamentos de programación JavaFundamentos de programación Java
Fundamentos de programación Java
 
Apendice general 4 terminos de programador
Apendice general 4 terminos de programadorApendice general 4 terminos de programador
Apendice general 4 terminos de programador
 

Destacado (19)

Calse 3 JAVA 2012
Calse 3 JAVA 2012Calse 3 JAVA 2012
Calse 3 JAVA 2012
 
Pedacito de amigo
Pedacito de amigoPedacito de amigo
Pedacito de amigo
 
MANUAL DE JAVA 2
MANUAL DE JAVA 2MANUAL DE JAVA 2
MANUAL DE JAVA 2
 
Manual java
Manual javaManual java
Manual java
 
Java básico
Java  básicoJava  básico
Java básico
 
Manual de java
Manual de javaManual de java
Manual de java
 
Manual instalacion java y java c
Manual instalacion java y java cManual instalacion java y java c
Manual instalacion java y java c
 
07 Javabeans
07   Javabeans07   Javabeans
07 Javabeans
 
super java
super javasuper java
super java
 
Clase 5 JAVA 2012
Clase 5 JAVA 2012Clase 5 JAVA 2012
Clase 5 JAVA 2012
 
Java Basico Platzi
Java Basico PlatziJava Basico Platzi
Java Basico Platzi
 
Java - Básico
Java - BásicoJava - Básico
Java - Básico
 
Java basico
Java basicoJava basico
Java basico
 
Rubrica de evaluación
Rubrica de evaluaciónRubrica de evaluación
Rubrica de evaluación
 
LA AMISTAD
LA AMISTADLA AMISTAD
LA AMISTAD
 
Manual de codificación de clases básicas en java
Manual de codificación de clases básicas en javaManual de codificación de clases básicas en java
Manual de codificación de clases básicas en java
 
Java netbeans-clase-001
Java netbeans-clase-001Java netbeans-clase-001
Java netbeans-clase-001
 
manual java
manual javamanual java
manual java
 
Software Para Crear Clases Virtuales
Software Para Crear Clases VirtualesSoftware Para Crear Clases Virtuales
Software Para Crear Clases Virtuales
 

Similar a Clase 4 JAVA 2012

Similar a Clase 4 JAVA 2012 (20)

Intro Java
Intro JavaIntro Java
Intro Java
 
Aplicaciones en java_genesis_duran (3)
Aplicaciones en java_genesis_duran (3)Aplicaciones en java_genesis_duran (3)
Aplicaciones en java_genesis_duran (3)
 
2introduccionallenguajejava 141109171757-conversion-gate02
2introduccionallenguajejava 141109171757-conversion-gate022introduccionallenguajejava 141109171757-conversion-gate02
2introduccionallenguajejava 141109171757-conversion-gate02
 
INTRODUCCION LENGUAJE JAVA
INTRODUCCION LENGUAJE JAVAINTRODUCCION LENGUAJE JAVA
INTRODUCCION LENGUAJE JAVA
 
Java
JavaJava
Java
 
Programacion no numerica ii
Programacion no numerica iiProgramacion no numerica ii
Programacion no numerica ii
 
Carro De Compras
Carro De ComprasCarro De Compras
Carro De Compras
 
Presentacion Java
Presentacion JavaPresentacion Java
Presentacion Java
 
manual de C#
manual de C#manual de C#
manual de C#
 
Manual c# 2
Manual c# 2Manual c# 2
Manual c# 2
 
Manual de c#
Manual de c#Manual de c#
Manual de c#
 
Aplicaciones java
Aplicaciones javaAplicaciones java
Aplicaciones java
 
Flujos de bytes y cadenas
Flujos de bytes y cadenasFlujos de bytes y cadenas
Flujos de bytes y cadenas
 
Java
JavaJava
Java
 
Introducción a la Programaciónen Java
Introducción a la Programaciónen JavaIntroducción a la Programaciónen Java
Introducción a la Programaciónen Java
 
Entrada y salida de datos en java
Entrada y salida de datos en javaEntrada y salida de datos en java
Entrada y salida de datos en java
 
Datos de entrada_desde_el_teclado java
Datos de entrada_desde_el_teclado javaDatos de entrada_desde_el_teclado java
Datos de entrada_desde_el_teclado java
 
Modulo6.ppt
Modulo6.pptModulo6.ppt
Modulo6.ppt
 
Laboratorio interfaces
Laboratorio interfacesLaboratorio interfaces
Laboratorio interfaces
 
Revista java world cap 8,9,10
Revista java world cap 8,9,10Revista java world cap 8,9,10
Revista java world cap 8,9,10
 

Más de José Braganza

Más de José Braganza (12)

Sesion n°1 estructura de datos
Sesion n°1 estructura de datosSesion n°1 estructura de datos
Sesion n°1 estructura de datos
 
Preguntas frecuentes sobre el servicio comunitario
Preguntas frecuentes sobre el servicio comunitarioPreguntas frecuentes sobre el servicio comunitario
Preguntas frecuentes sobre el servicio comunitario
 
Lamsem10
Lamsem10Lamsem10
Lamsem10
 
Lamsem9
Lamsem9Lamsem9
Lamsem9
 
Lamsem5
Lamsem5Lamsem5
Lamsem5
 
Lamsem4
Lamsem4Lamsem4
Lamsem4
 
Lamsem1
Lamsem1Lamsem1
Lamsem1
 
Lamina de semana 11 12
Lamina de semana 11 12Lamina de semana 11 12
Lamina de semana 11 12
 
Clase 4 java 2011
Clase 4 java 2011Clase 4 java 2011
Clase 4 java 2011
 
Clase 1 jJAVA 2012
Clase 1 jJAVA 2012Clase 1 jJAVA 2012
Clase 1 jJAVA 2012
 
Clase 2 JAVA 2012
Clase 2 JAVA 2012Clase 2 JAVA 2012
Clase 2 JAVA 2012
 
Semana 2 de Comportamiento Organizacional
Semana 2 de Comportamiento OrganizacionalSemana 2 de Comportamiento Organizacional
Semana 2 de Comportamiento Organizacional
 

Último

cuadro sinoptico tipos de organizaci.pdf
cuadro sinoptico tipos de organizaci.pdfcuadro sinoptico tipos de organizaci.pdf
cuadro sinoptico tipos de organizaci.pdfjesuseleazarcenuh
 
INTERESES Y MULTAS DEL IMPUESTO A LA RENTA POWER POINT.pptx
INTERESES Y MULTAS DEL IMPUESTO A LA RENTA POWER POINT.pptxINTERESES Y MULTAS DEL IMPUESTO A LA RENTA POWER POINT.pptx
INTERESES Y MULTAS DEL IMPUESTO A LA RENTA POWER POINT.pptxRENANRODRIGORAMIREZR
 
FORMAS DE TRANSPORTE EN MASA-PDF.pdf lclases
FORMAS DE TRANSPORTE EN MASA-PDF.pdf  lclasesFORMAS DE TRANSPORTE EN MASA-PDF.pdf  lclases
FORMAS DE TRANSPORTE EN MASA-PDF.pdf lclasesjvalenciama
 
Gestion de rendicion de cuentas viaticos.pptx
Gestion de rendicion de cuentas viaticos.pptxGestion de rendicion de cuentas viaticos.pptx
Gestion de rendicion de cuentas viaticos.pptxignaciomiguel162
 
instrumentos de mercados financieros para estudiantes
instrumentos de mercados financieros  para estudiantesinstrumentos de mercados financieros  para estudiantes
instrumentos de mercados financieros para estudiantessuperamigo2014
 
CULTURA EN LA NEGOCIACIÓN CONCEPTOS Y DEFINICIONES
CULTURA EN LA NEGOCIACIÓN CONCEPTOS Y DEFINICIONESCULTURA EN LA NEGOCIACIÓN CONCEPTOS Y DEFINICIONES
CULTURA EN LA NEGOCIACIÓN CONCEPTOS Y DEFINICIONESMarielaAldanaMoscoso
 
PIA MATEMATICAS FINANCIERAS SOBRE PROBLEMAS DE ANUALIDAD.pptx
PIA MATEMATICAS FINANCIERAS SOBRE PROBLEMAS DE ANUALIDAD.pptxPIA MATEMATICAS FINANCIERAS SOBRE PROBLEMAS DE ANUALIDAD.pptx
PIA MATEMATICAS FINANCIERAS SOBRE PROBLEMAS DE ANUALIDAD.pptxJosePuentePadronPuen
 
Modelo de convenio de pago con morosos del condominio (GENÉRICO).docx
Modelo de convenio de pago con morosos del condominio (GENÉRICO).docxModelo de convenio de pago con morosos del condominio (GENÉRICO).docx
Modelo de convenio de pago con morosos del condominio (GENÉRICO).docxedwinrojas836235
 
ADMINISTRACION FINANCIERA CAPITULO 4.pdf
ADMINISTRACION FINANCIERA CAPITULO 4.pdfADMINISTRACION FINANCIERA CAPITULO 4.pdf
ADMINISTRACION FINANCIERA CAPITULO 4.pdfguillencuevaadrianal
 
MARKETING SENSORIAL CONTENIDO, KARLA JANETH
MARKETING SENSORIAL CONTENIDO, KARLA JANETHMARKETING SENSORIAL CONTENIDO, KARLA JANETH
MARKETING SENSORIAL CONTENIDO, KARLA JANETHkarlinda198328
 
Nota de clase 72 aspectos sobre salario, nomina y parafiscales.pdf
Nota de clase 72 aspectos sobre salario, nomina y parafiscales.pdfNota de clase 72 aspectos sobre salario, nomina y parafiscales.pdf
Nota de clase 72 aspectos sobre salario, nomina y parafiscales.pdfJUANMANUELLOPEZPEREZ
 
gua de docente para el curso de finanzas
gua de docente para el curso de finanzasgua de docente para el curso de finanzas
gua de docente para el curso de finanzassuperamigo2014
 
INFORMATIVO CIRCULAR FISCAL - RENTA 2023.ppsx
INFORMATIVO CIRCULAR FISCAL - RENTA 2023.ppsxINFORMATIVO CIRCULAR FISCAL - RENTA 2023.ppsx
INFORMATIVO CIRCULAR FISCAL - RENTA 2023.ppsxCORPORACIONJURIDICA
 
Clase 2 Ecosistema Emprendedor en Chile.
Clase 2 Ecosistema Emprendedor en Chile.Clase 2 Ecosistema Emprendedor en Chile.
Clase 2 Ecosistema Emprendedor en Chile.Gonzalo Morales Esparza
 
EGLA CORP - Honduras Abril 27 , 2024.pptx
EGLA CORP - Honduras Abril 27 , 2024.pptxEGLA CORP - Honduras Abril 27 , 2024.pptx
EGLA CORP - Honduras Abril 27 , 2024.pptxDr. Edwin Hernandez
 
MARKETING SENSORIAL -GABRIELA ARDON .pptx
MARKETING SENSORIAL -GABRIELA ARDON .pptxMARKETING SENSORIAL -GABRIELA ARDON .pptx
MARKETING SENSORIAL -GABRIELA ARDON .pptxgabyardon485
 
Presentacion III ACTIVIDADES DE CONTROL. IV UNIDAD..pdf
Presentacion III ACTIVIDADES DE CONTROL. IV UNIDAD..pdfPresentacion III ACTIVIDADES DE CONTROL. IV UNIDAD..pdf
Presentacion III ACTIVIDADES DE CONTROL. IV UNIDAD..pdfLuisAlbertoAlvaradoF2
 
diseño de redes en la cadena de suministro.pptx
diseño de redes en la cadena de suministro.pptxdiseño de redes en la cadena de suministro.pptx
diseño de redes en la cadena de suministro.pptxjuanleivagdf
 
DELITOS CONTRA LA GESTION PUBLICA PPT.pdf
DELITOS CONTRA LA GESTION PUBLICA PPT.pdfDELITOS CONTRA LA GESTION PUBLICA PPT.pdf
DELITOS CONTRA LA GESTION PUBLICA PPT.pdfJaquelinRamos6
 

Último (20)

cuadro sinoptico tipos de organizaci.pdf
cuadro sinoptico tipos de organizaci.pdfcuadro sinoptico tipos de organizaci.pdf
cuadro sinoptico tipos de organizaci.pdf
 
INTERESES Y MULTAS DEL IMPUESTO A LA RENTA POWER POINT.pptx
INTERESES Y MULTAS DEL IMPUESTO A LA RENTA POWER POINT.pptxINTERESES Y MULTAS DEL IMPUESTO A LA RENTA POWER POINT.pptx
INTERESES Y MULTAS DEL IMPUESTO A LA RENTA POWER POINT.pptx
 
Tarea-4-Estadistica-Descriptiva-Materia.ppt
Tarea-4-Estadistica-Descriptiva-Materia.pptTarea-4-Estadistica-Descriptiva-Materia.ppt
Tarea-4-Estadistica-Descriptiva-Materia.ppt
 
FORMAS DE TRANSPORTE EN MASA-PDF.pdf lclases
FORMAS DE TRANSPORTE EN MASA-PDF.pdf  lclasesFORMAS DE TRANSPORTE EN MASA-PDF.pdf  lclases
FORMAS DE TRANSPORTE EN MASA-PDF.pdf lclases
 
Gestion de rendicion de cuentas viaticos.pptx
Gestion de rendicion de cuentas viaticos.pptxGestion de rendicion de cuentas viaticos.pptx
Gestion de rendicion de cuentas viaticos.pptx
 
instrumentos de mercados financieros para estudiantes
instrumentos de mercados financieros  para estudiantesinstrumentos de mercados financieros  para estudiantes
instrumentos de mercados financieros para estudiantes
 
CULTURA EN LA NEGOCIACIÓN CONCEPTOS Y DEFINICIONES
CULTURA EN LA NEGOCIACIÓN CONCEPTOS Y DEFINICIONESCULTURA EN LA NEGOCIACIÓN CONCEPTOS Y DEFINICIONES
CULTURA EN LA NEGOCIACIÓN CONCEPTOS Y DEFINICIONES
 
PIA MATEMATICAS FINANCIERAS SOBRE PROBLEMAS DE ANUALIDAD.pptx
PIA MATEMATICAS FINANCIERAS SOBRE PROBLEMAS DE ANUALIDAD.pptxPIA MATEMATICAS FINANCIERAS SOBRE PROBLEMAS DE ANUALIDAD.pptx
PIA MATEMATICAS FINANCIERAS SOBRE PROBLEMAS DE ANUALIDAD.pptx
 
Modelo de convenio de pago con morosos del condominio (GENÉRICO).docx
Modelo de convenio de pago con morosos del condominio (GENÉRICO).docxModelo de convenio de pago con morosos del condominio (GENÉRICO).docx
Modelo de convenio de pago con morosos del condominio (GENÉRICO).docx
 
ADMINISTRACION FINANCIERA CAPITULO 4.pdf
ADMINISTRACION FINANCIERA CAPITULO 4.pdfADMINISTRACION FINANCIERA CAPITULO 4.pdf
ADMINISTRACION FINANCIERA CAPITULO 4.pdf
 
MARKETING SENSORIAL CONTENIDO, KARLA JANETH
MARKETING SENSORIAL CONTENIDO, KARLA JANETHMARKETING SENSORIAL CONTENIDO, KARLA JANETH
MARKETING SENSORIAL CONTENIDO, KARLA JANETH
 
Nota de clase 72 aspectos sobre salario, nomina y parafiscales.pdf
Nota de clase 72 aspectos sobre salario, nomina y parafiscales.pdfNota de clase 72 aspectos sobre salario, nomina y parafiscales.pdf
Nota de clase 72 aspectos sobre salario, nomina y parafiscales.pdf
 
gua de docente para el curso de finanzas
gua de docente para el curso de finanzasgua de docente para el curso de finanzas
gua de docente para el curso de finanzas
 
INFORMATIVO CIRCULAR FISCAL - RENTA 2023.ppsx
INFORMATIVO CIRCULAR FISCAL - RENTA 2023.ppsxINFORMATIVO CIRCULAR FISCAL - RENTA 2023.ppsx
INFORMATIVO CIRCULAR FISCAL - RENTA 2023.ppsx
 
Clase 2 Ecosistema Emprendedor en Chile.
Clase 2 Ecosistema Emprendedor en Chile.Clase 2 Ecosistema Emprendedor en Chile.
Clase 2 Ecosistema Emprendedor en Chile.
 
EGLA CORP - Honduras Abril 27 , 2024.pptx
EGLA CORP - Honduras Abril 27 , 2024.pptxEGLA CORP - Honduras Abril 27 , 2024.pptx
EGLA CORP - Honduras Abril 27 , 2024.pptx
 
MARKETING SENSORIAL -GABRIELA ARDON .pptx
MARKETING SENSORIAL -GABRIELA ARDON .pptxMARKETING SENSORIAL -GABRIELA ARDON .pptx
MARKETING SENSORIAL -GABRIELA ARDON .pptx
 
Presentacion III ACTIVIDADES DE CONTROL. IV UNIDAD..pdf
Presentacion III ACTIVIDADES DE CONTROL. IV UNIDAD..pdfPresentacion III ACTIVIDADES DE CONTROL. IV UNIDAD..pdf
Presentacion III ACTIVIDADES DE CONTROL. IV UNIDAD..pdf
 
diseño de redes en la cadena de suministro.pptx
diseño de redes en la cadena de suministro.pptxdiseño de redes en la cadena de suministro.pptx
diseño de redes en la cadena de suministro.pptx
 
DELITOS CONTRA LA GESTION PUBLICA PPT.pdf
DELITOS CONTRA LA GESTION PUBLICA PPT.pdfDELITOS CONTRA LA GESTION PUBLICA PPT.pdf
DELITOS CONTRA LA GESTION PUBLICA PPT.pdf
 

Clase 4 JAVA 2012

  • 1. Curso Básico de Java Facilitador: Prof. Bassam Asfur Republica Bolivariana de Venezuela Área de Computación
  • 2. El paquete java.io Los streams. Cualquier programa realizado en Java que necesite llevar a cabo una operación de I/O lo hará a través de un stream. Un stream, cuya traducción literal es "flujo", es una abstracción de todo aquello que produzca o consuma información. Podemos ver a este stream como una entidad lógica. La vinculación de este stream al dispositivo físico la hace el sistema de entrada y salida de Java. Se ve pues la eficacia de esta implementación pues las clases y métodos de I/O que necesitamos emplear son las mismas independientemente del dispositivo con el que estemos actuando, luego, el núcleo de Java, sabrá si tiene que tratar con el teclado, el monitor, un sistema de archivos o un socket de red liberando a nuestro código de tener que saber con quién está interactuando.
  • 3.
  • 4.
  • 5. La entrada de consola, se obtiene a través de la instrucción System.in. Para conseguir un flujo de caracteres envolvemos dicha clase en un objeto del tipo BufferedReader, el cual soporta un flujo de entrada del buffer. Atendiendo a las especificaciones de esta clase, el parámetro que se le pasa es el stream de entrada que es de tipo Reader, el cual es abstracto por lo que recurriremos a una de sus subclases, en nuestro caso será InputStreamReader que convierte bytes a caracteres. Otra vez más, atendiendo a la especificación de esta última clase vemos que el parámetro que se le pasa es de tipo InputStream, o sea, la entrada orientada a byte que en nuestro caso es System.in, ya hemos asociado un dispositivo físico (el teclado) a un stream orientado a caracteres mediante la clase System con la clase BufferedReader Lectura de consola. BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
  • 6. Definición La Herencia es el mecanismo por el que se crean nuevos objetos definidos en términos de objetos ya existentes. Por ejemplo, si se tiene la clase Pelota, se puede crear la subclase Pelota_Futbol, que es una especialización de Pelota. class Pelota_Futbol extends Pelota{ String color; int diametro; } La palabra clave extends se usa para generar una subclase (especialización) de un objeto. Pelota_Futbol es una subclase de Pelota. Cualquier cosa que contenga la definición de Pelota será copiada a la clase Pelota_Futbol. Pero, además de heredar la funcionalidad de la clase padre, una clase hija puede sobreescribirla. Herencia en Java
  • 8.
  • 9. class Padre { String nombre, edad; public void mover() { System.out.println("Funcion implmetado en el padre"); } } class Hijo extends Padre { String madre; public void mover() { super.mover(); System.out.println("Funcion implemetado en el hijo"); } } public class Ejemplo{ public static void main(String[] args) { Hijo Alejandro= new Hijo(); Alejandro.mover(); } } Ejemplo Herencia
  • 10. Interfases y Clases Abstractas. Clases Abstractas. Al ser utilizado Herencias y/o Polimorfismo es muy común que en la Clase Base existan métodos diseñados únicamente con el propósito de ofrecer una guia para las Clases heredadas, en Java existe un vocablo que permite prohibir el uso de métodos en Clases Base, este calificativo es : abstract . Al ser definido un método como abstract se restringe que éste sea llamado directamente, cuando una Clase contiene un método de este tipo a ésta se le llama: Clase Abstracta . Una de las características de las Clases que Heredande una Clase abstracta, es que éstas deben definir los mismos métodos definidos en la Clase Base.
  • 11.
  • 12. Definición: Un interface es una colección de definiciones de métodos (sin implementaciones) y de valores constantes. Los interfaces se utilizan para definir un protocolo de comportamiento que puede ser implementado por cualquier clase del árbol de clases. En Java, un interface es un tipo de dato de referencia, y por tanto, puede utilizarse en cualquier parte del código. Interface
  • 13. Interface Una Interfase básicamente no indica que todas las Clases que implementen esta Interfase deben contener su misma estructura, para definir una Interfase se utiliza el vocablo interface y para especificar que una Clase debe utilizar determinada Interfase se utiliza el vocablo implements. Una característica especifica de Interfases que no es posible a través de Clases Abstractas es el uso de Herencias Múltiples, este concepto reside en diseñar Clases que adoptan el comportamiento de más de una Clase class Clase_Hijo extends Clase_Padre implements Interface1, Interface2, Interface3{ … }
  • 14. interface Instrumento { // Constante al compilar, automáticamente static y final int i = 5; // Métodos Automáticamente Públicos void tocar(); String tipo(); void afinar(); } class Guitarra implements Instrumento { public void tocar() { System.out.println("Guitarra.tocar()"); } public String tipo() { return "Guitarra"; } public void afinar() {} } Interface (Ejemplo)
  • 15. El polimorfismo es un concepto de la programación orientada a objetos que nos permite programar en forma general, en lugar de hacerlo en forma específica. En general nos sirve para programar objetos con características comunes y que todos estos compartan la misma superclase en una jerarquía de clases, como si todas fueran objetos de la superclase. Esto nos simplifica la programación. Ejemplo Polimorfismo Sumar Sumar(4,6); Sumar(4.5,6.5); Sumar(‘e’,’t’);
  • 16. class Hijo2 extends Padre { String Ruta; public void mover() { System.out.println("La funcion del Hijo 2"); } } class Ejemplo4{ public static void Ejecutar(Padre m) { m.mover(); } public static void main(String[] args) { Hijo jose= new Hijo(); Hijo2 anibal = new Hijo2(); Ejecutar(jose); Ejecutar(anibal); } } Ejemplo Polimorfismo
  • 17. public class Ejemplo{ int i; public Ejemplo() { i = 10; } // Este constructor establece el valor de i public Ejemplo( int valor ) { this.i = valor; // i = valor } public void Suma_a_i( int j ) { i = i + j; } } Al acceder a variables de instancia de una clase, la palabra clave this hace referencia a los miembros de la propia clase en el objeto actual; es decir, this se refiere al objeto actual sobre el que está actuando un método determinado y se utiliza siempre que se quiera hace referencia al objeto. Operador This
  • 18. Operador super class Clase{ void imprimir(){ System.out.println("Funcion Padre"); } } class Nueva_Clase extends Clase{ void imprimir(){ super.imprimir(); } } class Ejemplo { public static void main(String []y){ new Nueva_Clase().imprimir(); } } Si se necesita llamar al método padre dentro de una clase que ha reemplazado ese método, se puede hacer referencia al método padre con la palabra clave super: Si un método sobrescribe un método de su superclase, se puede utilizar la palabra clave super para eludir la versión sobrescrita de la clase e invocar a la versión original del método en la supreclase.