Programación II JAVA Dr. Mario Rossainz López
|
|
|
- Jaime Mario Ojeda Martín
- hace 8 años
- Vistas:
Transcripción
1 II JAVA II1 INTRODUCCIÓN: JAVA es un lenguaje de programación orientado a objetos que comenzó como resultado de la búsqueda de un lenguaje para programar dispositivos empotrados JAVA se define como un lenguaje: Simple Orientado a Objetos Distribuido Interpretado Robusto Seguro De Arquitectura Neutra Portable Multihilo Dinámico MODELO DE UN PROGRAMA JAVA
2 COMPILACIÓN Y CONVENCIONES El siguiente código concreto de JAVA muestra el programa quizás más simple del lenguaje: public class HolaMundo public static void main(string[] args) Systemoutprintln( Hola Mundo ); El programa define una clase pública que contiene el método main() que es el punto de entrada principal para todas las aplicaciones de JAVA El cuerpo de main() consiste de sólo una línea que imprime la salida Hola Mundo El programa debe ser guardado en un archivo con el mismo nombre que la clase pública, más la extensión java La sintaxis de compilación es: javac Nom_archjava El compilador genera el archivo nom_archclass dentro del directorio actual Para la ejecución del programa se utilizará el intérprete del lenguaje mediante la sintaxis: Java Nom_arch
3 II2 CLASES Y OBJETOS: Una clase es una colección de datos, y métodos que operan sobre esos datos Los datos y los métodos en conjunto sirven para definir algún tipo de objeto Por ejemplo la clase Círculo: clase Circulo double x double y double r double circunferencia() double area() public class Circulo // Variables de Instancia public double x,y; public double r; // Métodos de Instancia public double Circunferencia() return 2*314159*r; public double area() return *r*r;
4 II21 Instancias de clase: Al definir la clase Círculo en JAVA se ha creado un nuevo tipo de dato, ya que variables de ese tipo pueden ser declaradas como: Circulo c1,c2,c3,c4; Pero estas variables son sólo nombres que hacen referencia a objetos círculo pero no son objetos en sí En JAVA todo objeto se crea dinámicamente con la palabra new Por ejemplo: Circulo c1,c2,c3,c4; c1= new Circulo(); c2= new Circulo(); c3= new Circulo(); c4= new Circulo(); o bien: Circulo c1= new Circulo(); Circulo c2= new Circulo(); Circulo c3= new Circulo(); Circulo c4= new Circulo(); Se dice entonces que c1, c2, c3 y c4 son variables de tipo Círculo que contienen instancias de la clase Circulo (es decir, objetos Círculo) II22 Acceso a los datos del Objeto: Una vez creado un objeto se pueden utilizar sus campos de datos o variables de instancia de la siguiente forma a manera de ejemplo: Circulo c1= new Circulo(); // Objeto Circulo c1 con coordenadas (2,2) y radio de valor 1 c1x=20; c1y=20; c1r=10;
5 II23 Uso de métodos del Objeto: Así mismo se pueden utilizar los método de instancia del objeto sobre si mismo (a través de sus datos) de la siguiente forma a manera de ejemplo: Circulo c= new Circulo(); double a; cx=20; cy=20; cr=25; a=carea(); II24 El Constructor (Creación de un objeto): Toda clase en JAVA tiene por lo menos un método constructor (con el mismo nombre que la clase), cuyo propósito es efectuar toda la inicialización necesaria para el nuevo objeto En el ejemplo de los círculos: Circulo c= new Circulo(); JAVA proporciona un constructor por omisión que ni tima argumentos ni efectúa una inicialización especial A continuación, un ejemplo de un constructor para la clase Círculo definido por el programador: public class Circulo // Variables de Instancia public double x,y; public double r; //Método Constructor public Circulo(double x, double y, double r) thisx=x; //El argumento implícito llama this thisy=y; // y hace referencia a este objeto thisr=r; //o variable
6 // Métodos de Instancia public double Circunferencia() return 2*314159*r; public double area() return *r*r; ANTES Circulo c; c=new Circulo(); cx=1414; cy=-10; cr=025; DESPUES Circulo c= new Circulo(1414,-10,025) IMPORTANTE: El nombre del constructor es siempre el mismo que el de la clase El tipo de retorno es implícitamente una instancia de la clase Un constructor no debe usar una declaración return para regresar un valor, ni se emplea la palabra clave void para definir el tipo de retorno ya que implícitamente es this Se puede inicializar un objeto de distintas maneras usando constructores múltiples Por ejemplo:
7 public class Circulo // Variables de Instancia public double x,y; public double r; //Métodos Constructores public Circulo(double x, double y, double r) thisx=x; //El argumento implícito llama this thisy=y; // y hace referencia a este objeto thisr=r; //o variable public Circulo(double r) x=00; y=00; thisr=r; public Circulo(Circulo c) x=cx; y=cy; r=cr; public Circulo() x=00; y=00; r=10; // Métodos de Instancia public double Circunferencia() return 2*314159*r; public double area() return *r*r;
8 IMPORTANTE: Todos los constructores tienen el mismo nombre En JAVA un método se distingue mediante su nombre, el número, el tipo y posición de sus argumentos El hecho de definir métodos con el mismo nombre y distintos tipos de argumentos se llama SOBRECARGA DE METODOS II25 Variables de Clase: En la definición de la clase Círculo, se declararon 3 variables de instancia: x,y,r Cada instancia de la clase, es decir, cada Círculo tiene su propia copia de estas tres variables Sin embargo en ocasiones se requiere una variable de la cual sólo haya una copia; algo así como una variable global aunque JAVA no permite variables globales JAVA utiliza la palabra clave static para indicar que una variable particular es una variable de clase y no una variable de instancia Es decir, sólo hay una copia de la variable asociada con la clase A este tipo de variable también se le denomina variable estática Por ejemplo: public class Circulo // Variable de clase static int num_circulos=0; //Cuenta el no circulos // creados // Variables de Instancia public double x,y; public double r; //Métodos Constructores public Circulo(double x, double y, double r) thisx=x; thisy=y; thisr=r; num_circulos++; public Circulo(double r) // Hace referencia al this(00,00,r); // constructor de arriba public Circulo(Circulo c) this(cx,cy,cr); public Circulo() this(00,00,10);
9 // Métodos de Instancia public double Circunferencia() return 2*314159*r; public double area() return *r*r; Para accesar a las variables de clase se utiliza el siguiente formato: Por ejemplo: Nombre_de_claseVariable_de_clase Systemoutprintln( Num de Circulos creados: +Circulonum_circulos); II26 Constantes (Otro tipo de variables de clase): Cuando una variable de clase además de ser declarada con la palabra static se declara también con la palabra clave final, dicha variable se considera como si fuera una constante Por ejemplo public class Circulo public static final double PI= ; public double x,y,r; public static int num_circulos=0; CirculoPI=4; Error double a= 2*CirculoPI*r; Correcto
10 II27 Métodos de clase: Los métodos de clase se asemejan a las variables de clase en cuanto a que: Los métodos de clase se declaran con la palabra clave static Los métodos de clase se denominan métodos estáticos Los métodos de clase se invocan mediante la clase y no con una instancia (objeto) Por ejemplo; si queremos utilizar el método de JAVA que se emplea para calcular la raíz cuadrada de un número; escribiríamos: Mathsqrt(número); Esto es así ya que sqrt() es un método estático o un método de clase, en este caso de la clase Math que es donde se encuentra definido En el ejemplo siguiente se muestran 2 definiciones sobrecargadas de un método para la clase círculo Uno es un método de instancia y el otro un método de clase: public class Circulo public double x,y,r; // Método de instancia Regresa el más grande de dos // círculos public Circulo masgrande(circulo c) if (cr > r) return c; else return this; // Un método de clase Regresa el más grande de dos // círculos public static Circulo masgrande(circulo a, Circulo b) if (ar > br) return a; else return b;
11 La invocación del método de instancia sería la siguiente: Circulo a= new Circulo(20); Circulo b= new Circulo(30); Circulo c= amasgrande(b); La invocación del método de clase sería la siguiente: Circulo a= new Circulo(20); Circulo b= new Circulo(30); Circulo c= Circulomasgrande(a,b); II3 SUBCLASES Y HERENCIA: La herencia es un mecanismo para compartir y delegar tanto conocimiento como comportamiento de entidades software en sistemas complejos, permitiendo a nuevas clases reutilizar parte de otras clases que han sido previamente definidas Por ejemplo, podríamos definir la clase CirculoGrafico (que dibuja un circulo en pantalla) como una extensión o subclase de la clase Círculo de la manera siguiente: clase Circulo double x, y r double circunferencia() double area() HEREDA clase CirculoGrafico Color exterior, relleno void dibujar()
12 public class CirculoGrafico extends Circulo // Automáticamente se heredan las variables y métodos de Círculo Color exterior, relleno; public void dibujar(dibujaventana dw) dwdibujarcirculo(x,y,r,exterior,relleno); // x,y,r estan definidas en Circulo La palabra extends dice a JAVA que CirculoGrafico es una subclase de Circulo y que hereda los campos y métodos de dicha clase, o bien en otras palabras; la clase Circulo es la superclase de la clase CirculoGrafico y por tanto esta última es una extensión de la primera Por ejemplo: CirculoGrafico gc= new CirculoGrafico(); double area= gcarea(); Circulo c=gc; // Todo objeto CírculoGrafico es un objeto // Circulo) II31 Clases Finales: Cuando una clase se declara con el modificador final, no es posible extender ni formar una subclase de la misma
13 II32 Superclases y Jerarquías de Clases: Toda clase que se defina en JAVA tendrá necesariamente una superclase, aun cuando no se especifique la superclase con la claúsula extends en cuyo caso la superclase será la clase Object que es la clase sobre la cual cuelgan todas las demás clases inmediatas, siendo ésta la másimportante debido a que: La clase Object es la única clase sin una superclase Los métodos definidos en cla clase Object pueden ser llamados por cualquier objeto de JAVA Un ejemplo de una jerarquía de clases puede ser la siguiente: Object Circulo CirculoGrafico Math System Component Container Panel Applet Button List
14 II33 Constructores de Subclase: Generalmente dentro de los constructores de sublase se utiliza la palabra reservada super que sirve para invocar el método constructor de una superclase y sólo se puede utilizar de esta manera y debe aparecer como la primera instrucción dentro del constructor Por ejemplo: public class CirculoGrafico( double x, double y, double r, Color exterior, Color relleno) thisx=x; thisy=y; thisr=r; thisexterior=exterior; thisrelleno=relleno; // En este constructor se duplica el código del // constructor Circulo, y si x,y,r fueron declaradas // como private en Circlo, no podrían ser inicializadas // de esta forma public class CirculoGrafico( double x, double y, double r, Color exterior, Color relleno) super(x,y,r); thisexterior=exterior; thisrelleno=relleno; Si un constructor no invoca ningún constructor de su superclase, JAVA lo hace por implicación Pero si una clase se declara sin constructor alguno, JAVA agrega implícitamente un constructor a la clase de la forma: public nom_clase_constructor() super();
15 Por ejemplo: class A int i; public A() // Aquí va una llamada implícita a // super() i=3; class B extends A // Constructor por omision: // public B() super(); II4 ENSOMBRECIMIENTO E INVALIDACIÓN II41 Variables Ensombrecidas: Si suponemos la siguiente jerarquía de clases, donde cada una de ellas define una misma variable x : A //define la variable x B //define la variable x C //define la variable x Suponiendo que C es una subclase de B y ésta última a su vez es una subclase de A Se dice entonces que la clase C ensombrece la variable x definida también en las clases A y B y de igual manera la clase B ensombrece la variable x definida también en A Si suponemos todo esto y además damos por hecho que estamos trabajando en la clase C, las siguientes expresiones son válidas excepto la última:
16 x thisx superx ((B)this)x ((A)this)x supersuperx // Es la variable de la clase C // Es la variable de la clase C // Es la variable de la clase B // Es la variable de la clase B // Es la variable de la clase A // Es un error sintáctico II42 Invalidación de Métodos: Cuando una clase define un método que usa el mismo nombre, el mismo tipo de retorno y los argumentos como un método en su subclase El método en dicha clase invalida el método en la superclase (No confundir con la sobrecarga de métodos) Así, cuando se invoca el método para un objeto de la clase, se llama a la nueva definición del método (el de la subclase) y no a la definición antigua de la superclase Por ejemplo: class A int i=1; int f() return i; class B extends A int i=2; int f() return i public class prueba_invalidacion public static void main(string args[]) B b= new B(); Systemoutprintln(bi); // i=2 Systemoutprintln(bf()); // regresa -2 A a= (A)b; // Modela b como instancia de A Systemoutprintln(ai); // i=1 Systemoutprintln(af()); // regresa -2 // Sigue referencia a Bf()
17 NOTA: No se pueden invalidar métodos estáticos, privados y finales Tampoco se pueden invalidar los métodos de una clase final II421 Como invocar a un método invalidado: class A int i=1; int f() return i; class B extends A int i; int f() i=superi+1 //representa Ai return superf()+i //invoca a Af() II5 OCULTAMIENTO Y ENCAPSULACION DE DATOS: A la técnica de la Orientación a Objetos de ocultar datos dentro de la clase para dejarlos disponibles sólo mediante los métodos se le conoce como encapsulamiento En otras palabras, cuando todas las variables de una clase están ocultas, los métodos de la clase definen las únicas operaciones que se pueden efectuar en los objetos de dicha clase para procesar dichas variables Si se quieren ocultar variables y/o métodos, bastará con declararlos como privados (con la palabra private) Ejemplo: public class LavanderiaAutomatica // El usuario puede usar esta clase private Lavanderia[] sucio, limpio; // El usuario no puede ver estas vars internas public void lavar() // Sin embargo, si puede utilizar estos métodos public void secar() // para manipular dichas variables
18 II51 Modificadores de Visibilidad: a) private (visible solo para los métodos definidos dentro de la clase) b) private protected (visible dentro de su clase y subclases) c) protected (visibilidad de private protected más visibilidad en el package al que pertenece la clase) d) public (visible en todas partes) e) nivel de visibilidad por omisión (dentro de su clase y de las clases que pertenecen al mismo paquete) II52 Ejemplo de Ocultamiento de variables en la clase Circulo public class Circulo protected double x,y; protected double r; private static final double MAXR= 1000; private boolean checar_radio(double r) return (r <=MAXR); // Constructores públicos public Circulo(double x, double y, double r) thisx=x; thisy=y; if (checar_radio(r)) thisr=r; else thisr= MAXR; public Circulo(double r) this(00,00,r); public Circulo() this(00,00,10); // métodos públicos de acceso a datos public void mover_a(double x, double y) thisx=x; thisy=y; public void mover(double dx, double dy) x+=dx; y+=dy; public void ponerradio(double r) thisr= (checar_radio(r))? r : MAXR; // métodos triviales public double conseguirx() return x; public double conseguiry() return y; public double conseguirradio() return r;
19 II6 CLASES Y METODOS ABSTRACTOS Las clases y los métodos abstractos se definen mediante la palabra clave abstract Un método abstract no tiene cuerpo sino solo una definición de señal o firma seguida de un punto y coma Algunas reglas de los métodos y clases abstract son: Cualquier clase con un método abstract se vuelve automáticamente abstract en sí y debe ser declarada como tal Una clase se puede declarar abstract, aun cuando no tenga métodos abstract Una clase abstract no se puede iniciar La subclase de una clase abstract se inicia al invalidar todos los métodos abstract de su superclase y proporciona una instrumentación para todos ellos Si una subclase de una clase abstract no instrumenta todos los métodos abstract que hereda, dicha subclase es en sí abstract El siguiente ejemplo muestra una clase abstract Forma y dos subclases no abstract de ella: public abstract class Forma public abstract double area(); public abstract double perimetro(); class Circulo extends Forma protected double x,y; protected double r; private static final double PI= ; public Circulo() r=10; public Circulo(double r) thisr=r; public double area() return PI*r*r; public double perimetro() return 2*PI*r; public double conseguirradio() return r;
20 class Rectangulo extends Forma protected double w,h; public Rectangulo() w=00; h=00 public Rectangulo(double w, double h) thisw=w; thish=h; public double area() return w*h; public double perimetro(return 2*(w+h); public double ancho() return w; public double altura() return h; La utilidad del anterior ejemplo puede ser ilustrada con la siguiente parte de código fuente de la aplicación principal de este problema: Forma[ ] formas= new Forma[3]; formas[0] = new Circulo(20); formas[1] = new Rectángulo (10, 30); formas[2] = new Rectángulo(40,20); double total_area= 0; for (int i=0; i<formaslength; i++) total_area= formas[i]area(); II7 INTERFACES Las interfaces son módulos compuestos por un conjunto de métodos abstractos y constantes Una interfaz se parece mucho a una clase abstracta, excepto en que utiliza la palabra clave interface en vez de las palabras abstract y class Se dice entonces que una clase puede extender su superclase (extends) pero también puede implementar (implements) opcionalmente una interfaz
21 II71 Ejemplo de una interfaz: public interface Dibujable public void ponercolor(color c); public void ponerposicion(double x, double y); public void dibujar(dibujarventana dw); II72 Ejemplo de la instrumentación de una interfaz: public class RectanguloDibujable extends Rectángulo implements Dibujable //Nuevas variabes de instancia private Color c; private double x,y; //Un constructor public RectanguloDibujable(double w, double h) super(w,h); //Instrumentaciones de los métodos de la interfaz heredando //todos los métodos públicos de Rectángulo public void ponercolor(color c) thisc = c; public void ponerposicion(double x, double y) thisx=x; thisy=y; public void dibujar (DibujarVentana dw) dwdibujarrect(x,y,w,h,c); public class CirculoDibujable extends Circulo implements Dibujable
22 II73 Ejemplo del uso de interfaces: Forma[] formas= new Formas[3]; Dibujable[] dibujables= new Dibujable[3]; CirculoDibujable dc= new CirculoDibujable(11); CuadradoDibujable ds= new CuadradoDibujable(25); RectanguloDibujable dr= new RectanguloDibujable(23,45); formas[0]=dc; formas[1]=ds; formas[2]=dr; dibujables[0]=dc; dibujables[1]=ds; dibujables[2]=dr; double total_area=0; DibujarVentana cuadro= new DibujarVentana(30,100,500, 1550); for (int i=0; i<formaslength; i++) total_area+= formas[i]area(); dibujables[i]ponerposicion(i*100,i*100); dibujables[i]dibujar(cuadro); II74 Modelado informal de la aplicación: Clase Abstracta Forma Clase Circulo Clase Cuadrado Clase Rectangulo Interface Dibujable Clase Circulo Dibujable Clase Cuadrado Dibujable Clase Rectangulo Dibujable
Derechos de Acceso: COMPOSICION
CLASES Una clase es un tipo definido por el usuario que describe los atributos y los métodos de los objetos que se crearan a partir de la misma. class nombre_clase cuerpo de la clase Derechos de Acceso:
PROGRAMACION ORIENTADA A OBJETOS EN C++
PROGRAMACION ORIENTADA A OBJETOS EN C++ 1- INTRODUCCIÓN El lenguaje C++ representa el resultado de los esfuerzos realizados para proporcionar las ventajas de la programación Orientada a Objetos a un lenguaje
Programación orientada a objetos. Resumen de Temas Unidad 6: Polimorfismo y reutilización
Programación orientada a objetos Resumen de Temas Unidad 6: Polimorfismo y reutilización 6.1 Concepto de Polimorfismo Polimorfismo quiere decir "un objeto y muchas formas". Esta propiedad permite que un
Programación Orientada a Objetos (POO)
Programación Orientada a Objetos (POO) Introducción La programación orientada a objetos es una técnica de programación en la cual expresamos el código en términos relacionados a como vemos las cosas en
Programación orientada a objetos. Resumen de Temas Unidad 4: Sobrecarga
Programación orientada a objetos Resumen de Temas Unidad 4: Sobrecarga 4.1 Conversión de tipos (1) Conversiones implícitas: La conversión entre tipos primitivos se realizan de modo automático de un tipo
PRÁCTICA No 4 POO Encapsulación. El alumno conocerá los principios de la encapsulación, y el uso de constructores para la inicialización de datos
Objetivos El alumno conocerá los principios de la encapsulación, y el uso de constructores para la inicialización de datos Introducción En esta práctica se abarcará el concepto de la encapsulación, así
PROYECTO FIGURAS DIAGRAMA DE FLUJO
FIGURAS JAVA ~ 1 ~ PROYECTO FIGURAS 1. Crear una clase Figura, abstracta 2. Añadirle los métodos vacíos a. CalcularPerimetro() public Devolver double b. Calcular() public Devolver double 3. Crear la clase
16. Herencia Definición de herencia. 168 A. García-Beltrán y J.M. Arranz
168 A. García-Beltrán y J.M. Arranz 16. Herencia Objetivos: a) Definir el concepto de herencia entre clases b) Interpretar el código fuente de una aplicación Java donde aparecen clases relacionadas mediante
Agradecimientos. Nota de los autores. 1 Problemas, algoritmos y programas 1
Prologo Agradecimientos Nota de los autores Índice general I III V VII 1 Problemas, algoritmos y programas 1 1.1 Programas y la actividad de la programación.................... 4 1.2 Lenguajes y modelos
Programación Orientada a Objetos con Java. Elementos Básicos del Lenguaje Java. Relación entre clases. Ejemplo de Clase: Punto !
Programación Orientada a Objetos con Java Rafael Rivera López Elementos Básicos del Lenguaje Java II Ingeniería en Sistemas Computacionales Agosto-Diciembre de 2004 Veracruz, Ver. Relación entre clases
Aplicaciones de Escritorio
Aplicaciones de Escritorio Introducción n a la Programación Orientada a Objetos con Java Disertantes: Ing. Rasjido, Jose. AdeS Montenegro, Cristian. Agenda Clases y Paquetes. Clases y Paquetes. Modificadores
Java Avanzado Facultad de Ingeniería. Escuela de computación.
2 Java Avanzado Facultad de Ingeniería. Escuela de computación. Java Avanzado. Guía 5 3 Introducción Este manual ha sido elaborado para orientar al estudiante de Java Avanzado en el desarrollo de sus prácticas
Tema: Clases y Objetos en C#. Parte II.
Programación II. Guía No. 5 1 Facultad: Ingeniería Escuela: Computación Asignatura: Programación II Tema: Clases y Objetos en C#. Parte II. Objetivos Implementar clases, objetos, propiedades, métodos y
PROGRAMACIÓN EN C#.NET Programación Orientada a Objetos en C# Ing. Bruno López Takeyas
PROGRAMACIÓN EN C#.NET Programación Orientada a Objetos en C# Ing. Bruno López Takeyas Instituto Tecnológico de Nuevo Laredo 1 Qué es UML? UML = Unified Modeling Language Un lenguaje de propósito general
Test : Conteste exclusivamente en una HOJA DE LECTURA ÓPTICA, no olvidando marcar que su tipo de examen es A.
SISTEMAS INFORMÁTICOS I Junio 2003 INGENIERÍA EN INFORMÁTICA - Código Carrera 55 - Código Asignatura 077 Tipo de Examen: A NO SE PERMITE EL USO DE NINGÚN MATERIAL Tiempo: 2 horas Apellidos: Nombre: DNI:
Unidad Didáctica 2. Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones
Unidad Didáctica 2 Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Versión 1.0.3 Índice
Variables. Una variable no es más que un nombre simbólico que identifica una dirección de memoria: vs.
Variables Una variable no es más que un nombre simbólico que identifica una dirección de memoria: Suma el contenido de la posición 3001 y la 3002 y lo almacenas en la posición 3003 vs. total = cantidad1
Curso de Java POO: Programación orientada a objetos
Curso de Java POO: Programación orientada a objetos Luis Guerra [email protected] Curso INEM. Programación en Java Marzo 2011 Índice Previo Repaso y encapsulación Empaquetado Relaciones entre clases Herencia
Prácticas de Programación
Prácticas de Programación Tema 1. Introducción al análisis y diseño de programas Tema 3. Herencia y Polimorfismo Tema 4. Tratamiento de errores Tema 5. Aspectos avanzados de los tipos de datos Tema 6.
Por ejemplo, considerando la jerarquía de herencia de Figuras Geométricas de la siguiente figura, es posible hacer uso del concepto de polimorfismo.
POLIMORFISMO El polimorfismo es la característica de la programación orientada a objetos que permite modificar la instancia de un objeto en tiempo de ejecución basado en una jerarquía de herencia. De esta
Arquitectura y Lenguaje Java
Arquitectura y Lenguaje Java 1 Introducción El lenguaje de programación Java así como su arquitectura se diseñaron para resolver problemas que se presentan en la programación moderna. Se inició como parte
Tema 7.- Fundamentos de la Programación Orientada a Objetos
Tema 7.- Fundamentos de la Programación Orientada a Objetos 7 de enero de 2014 Objetivos Saber definir clases propias. Saber crear objetos de una clase determinada e interactuar con ellos (Problema 1).
Programación orientada a objetos. Capítulo 8 Mejora de las estructuras mediante herencia
Programación orientada a objetos Capítulo 8 Mejora de las estructuras mediante herencia Clases y objetos de DoME Modelo de objetos Modelo de clases Crítica de la v1 de DoME - Duplicación de código - Las
Herencia. Hay clases que comparten gran parte de sus características.
Herencia Hay clases que comparten gran parte de sus características. El mecanismo conocido con el nombre de herencia permite reutilizar clases: Se crea una nueva clase que extiende la funcionalidad de
Principios de Computadoras II
Departamento de Ingeniería Electrónica y Computadoras Ing. Ricardo Coppo [email protected] Qué es un Objeto? Un objeto es una instancia de una clase Las clases actuán como modelos que permiten la creación
Conceptos a tratar. Fundamentos de la Programación Orientada a Objetos Ampliación sobre clases y objetos
Fundamentos de la Programación Orientada a Objetos Ampliación sobre clases y objetos Programación Orientada a Objetos Facultad de Informática Dep. Ingeniería del Software e Inteligencia Artificial Universidad
TECNICAS DE PROGRAMACION Universidad Católica Los Angeles de Chimbote METODOS CONSTRUCTORES Y LA REFERENCIA THIS
METODOS CONSTRUCTORES Y LA REFERENCIA THIS Un Constructor es una función, método, etc, de las clases, la cual es llamada automáticamente cuando se crea un objeto de esa clase. Por ser métodos, los constructores
Tutorial de C# Delegados y Eventos. Por: Óscar López, M.Sc.
Tutorial de C# Delegados y Eventos Por: Óscar López, M.Sc. [email protected] DELEGADOS Delegados Son unos objetos que implícitamente extienden de System.Delegate y definen un tipo referencia soportado
I. Introducción a la programación orientada a objetos y al lenguaje JAVA Colegio Reuven Feuerstein --Javier Navarro
I. Introducción a la programación orientada a objetos y al lenguaje JAVA Colegio Reuven Feuerstein --Javier Navarro Lectura de Datos Dentro de un applet es sencillo tomar algún dato del usuario para realizar
Modulo 11. Clases y Objetos en Java
El siguiente texto es una traducción no oficial del documento publicado por el grupo JEDI, Introduction to Programming 1, no pretende en ningún momento reemplazar los contenidos generados por este grupo.
Clases y Objetos en Java. ELO329: Diseño y Programación Orientados a Objetos
Clases y Objetos en Java ELO329: Diseño y Programación Orientados a Objetos Construyendo clases nuevas La forma más simple de una clase en Java es: Class Nombre_de_la_Clase { } /* constructores */ /* métodos
Programación Orientada a Objetos en Java
Programación Orientada a Objetos en Java Curso 2006-2007 Tema 3 Clases y Objetos Gonzalo Méndez Pozo Dpto. de Ingeniería de Software e Inteligencia Artificial Universidad Complutense de Madrid Clases y
Introducción a la Programación Orientada a Objetos
Introducción a la Programación Orientada a Objetos El paradigma imperativo. En un programa se tienen una serie de variables con las cuales operamos y modificamos mediante sentencias y funciones para producir
BIBLIOGRAFÍA...67. Anexo A. La referencia this...68. Anexo B. El modificador static...71. Anexo C. La etiqueta APPLET...73
ÍNDICE 1. Introducción a Java...1 1.1 Desarrollo y evolución de Java...1 1.2 Java es orientado a objetos...1 1.3 La sintaxis de Java es similar a la de C...2 1.4 Java es interpretado...2 1.5 Java es multiplataforma...2
Funciones como Subprogramas en C++
FUNCIONES Cuando es necesario escribir programas complicados para resolver problemas complejos, una práctica común entre los programadores es descomponer el algoritmo (el diagrama de flujo) en varias partes.
Lección 2: Creando una Aplicación en Java. 1. Estructura del archivo de una clase. 3. Definiendo clases fundamentos
Lección 2: Creando una Aplicación en Java 1. Estructura del archivo de una clase 2. Usando una clase 3. Definiendo clases fundamentos Objetivos Conocer: La forma en la cual está se está estructurado el
Conceptos más avanzados de Programación Orientada a Objetos
Conceptos más avanzados de Programación Orientada a Objetos Programación 2008 Licenciatura de Lingüística y Nuevas Tecnologías Repaso: API de Java API = Application Programming Interface Una API describe
1. Cuántas sentencias hay en la secuencia principal del siguiente programa?
1. Cuántas sentencias hay en la secuencia principal del siguiente programa? public class PruebaSwitch { System.out.print ("Opcion: "); case 3: System.out.println ("miércoles "); A. 1. B. 4. C. Más de 10.
Tema 3. Programación orientada a objetos en Java (Parte 1)
Programación en Java Tema 3. Programación orientada a objetos en Java (Parte 1) Luis Rodríguez Baena Facultad de Informática Clases y objetos (I) Clase Cojunto de datos (atributos) y funciones (métodos)
Las plantillas permiten definir funciones genéricas.
Introducción (Genericidad). Plantillas de funciones o funciones genéricas. Sintaxis de plantillas. Ejemplos de declaraciones. A tener en cuenta Un ejemplo de plantilla de funciones: Máximo de un vector.
Primera Escuela de la Red Temática SVO. Madrid, 27-28 Noviembre, 2006 JAVA BÁSICO. Raúl Gutiérrez Sánchez LAEFF - INTA [email protected].
Primera Escuela de la Red Temática SVO. Madrid, 27-28 Noviembre, 2006 JAVA BÁSICO LAEFF - INTA [email protected] Qué es Java? Java es un lenguaje de programación orientado a objetos desarrollado por Sun
Guía práctica de estudio 04: Clases y objetos
Guía práctica de estudio 04: Clases y objetos Elaborado por: M.C. M. Angélica Nakayama C. Ing. Jorge A. Solano Gálvez Autorizado por: M.C. Alejandro Velázquez Mena Guía práctica de estudio 04: Clases y
Interfaces y Clases Internas. ELO329: Diseño y Programación Orientados a Objetos
Interfaces y Clases Internas ELO329: Diseño y Programación Orientados a Objetos Qué queremos decir con interfaces y clases internas? NOTA: El término interfaz aquí NO se refiere a las interfaces gráficas
Todo programa en 'C' consta de una o más funciones, una de las cuales se llama main.
LENGUAJE C CARACTERISTICAS DEL LENGUAJE 'C' El lenguaje 'C' se conoce como un lenguaje compilado. Existen dos tipos de lenguaje: interpretados y compilados. Los interpretados son aquellos que necesitan
Métodos que devuelven valor Dado el siguiente triángulo rectángulo:
Métodos que devuelven valor Dado el siguiente triángulo rectángulo: hipotenusa altura base Para dibujar este triángulo necesitamos los siguientes datos: base y altura La base y la altura, se utilizarán
Carlos Montenegro. Programación Orientada a Objetos Proyecto Curricular de Ingeniería de Sistemas
2 - Introducción al lenguaje Java, identificadores y comentarios. Carlos Montenegro Programación Orientada a Objetos Proyecto Curricular de Ingeniería de Sistemas 1. Introducción: Java tiene como todos
Introducción a Java LSUB. 30 de enero de 2013 GSYC
Introducción a Java LSUB GSYC 30 de enero de 2013 (cc) 2013 Laboratorio de Sistemas, Algunos derechos reservados. Este trabajo se entrega bajo la licencia Creative Commons Reconocimiento - NoComercial
Programación Orientada a Objetos
Programación Orientada a Objetos E.T.S.I. Informática Universidad de Málaga http://www.lcc.uma.es/ Contenido Introducción histórica Conceptos básicos de la Programación O. O. Conceptos avanzados de la
Agenda..NET C# Laboratorio #1
PROGRAMACIÓN III Agenda.NET C# Laboratorio #1 .NET Qué es.net? Una arquitectura tecnológica para la creación y distribución de software como servicio. Servicio en cualquier plataforma, cliente en cualquier
Clases Abstractas e Interfaces
Clases Abstractas e Interfaces Presentación basada en: 1. Java 2., Curso de programación. Fco. Javier Ceballos. Ed. Alfoomega&RA-MA, 2003. 2. Apuntes del Curso Programación Orientado a Objetos. Pablo Castells.
HERENCIA Y TIPOS. Articulo. Video Audio Altavoces. Amplificador
HERENCIA Y TIPOS. Las clases con propiedades y funciones comunes se agrupan en una superclase. Las clases que se derivan de una superclase son las subclases. Las clases se organizan como jerarquía de clases.
Conceptos de Programación Orientada a Objetos
Paradigmas de programación Prog. orientada a objetos Conceptos de Programación Orientada a Objetos Abstracción de Programación estructurada Programación imperativa 2 Programación estructurada (I) Programación
Centro Asociado Palma de Mallorca. Antonio Rivero Cuesta
Centro Asociado Palma de Mallorca Antonio Rivero Cuesta La Sintaxis de Java I... 5 Tipos de datos... 6 Tipos de datos simples... 7 Operadores... 11 Operadores Aritméticos... 12 Operadores relacionales...
Patrones de Diseño. Patrón estructural Composite. Técnicas de Programación - Curso 2007/08
Patrones de Diseño Patrón estructural Composite Técnicas de Programación - Curso 2007/08 Propósito Componer objetos en estructuras arbóreas para representar jerarquías todo-parte. Manipular todos los objetos
Una Clase: define un grupo de objetos que tienen propiedades similares y se comportan de manera similar.
Clases La programación orientada a objetos utiliza clases para encapsular (envolver, esconder) datos (atributos) y métodos (comportamientos). Por ejemplo, el estéreo de un auto encapsula todos los atributos
Forma Básica Clase Java
Programación Orientada a Objetos Conceptos Básicos de Objetos en Java Ing. Julio Ernesto Carreño Vargas MsC. Forma básica de una clase en Java Especifica que la clase forma parte del paquete conceptos
Curso Fundamentos de Informática Lección 7. Programación Orientada a Objetos
Fundamentos de Informática Lección 7. Programación Orientada a Objetos Curso 2010-2011 José Ángel Bañares y Pedro Álvarez 2/11/2010. Dpto. Informática e Ingeniería de Sistemas. Índice de contenidos Implementación
Universidad Autónoma de Tlaxcala. M.C. José Juan Hernández Mora. Primera Sesión
Universidad Autónoma de Tlaxcala Introducción al lenguaje JAVA Primera Sesión 1. Introducción a la programación orientada a objeto 2. Introducción al lenguaje Java 3. Primer programa en Java 4. Primer
OBJETIVO. Repasar algunas de las instrucciones básicas del lenguaje en JAVA.
NOMBRE DE LA PRÁCTICA: Repaso de JAVA. OBJETIVO. Repasar algunas de las instrucciones básicas del lenguaje en JAVA. CÓDIGO FUENTE. PROGRAMA: Ejemplo1. Geometría. Clase Geometria.java: public abstract class
Estructuras de Datos y Algoritmos. Primeros ejemplos de TDA
Estructuras de Datos y Algoritmos Primeros ejemplos de TDA Repaso POO Programación Orientada a Objetos Principios encapsulamiento abstracción herencia polimorfismo POO y Java: encapsulamiento Todo está
Lenguaje Orientado por Objetos Simple, Poderoso y Fácil de aprender Robusto Interactivo Arquitectura neutral Interpretado y de alto desempeño
Programación Orientada a Objetos Introducción a Java Angela Carrillo Ramos Java: Lenguaje de Programación Por qué surge un lenguaje? Para adaptarse a los cambios de entorno y usos: Independencia de la
8. Sentencia return y métodos
92 A. García-Beltrán y J.M. Arranz 8. Sentencia return y métodos Objetivos: a) Describir el funcionamiento de la sentencia return b) Interpretar el resultado de una sentencia return en el código fuente
Programación Orientada a Objetos en Java
Programación Orientada a Objetos en Java Curso 2006-2007 Tema 4 Herencia y Polimorfismo Gonzalo Méndez Pozo Dpto. de Ingeniería de Software e Inteligencia Artificial Universidad Complutense de Madrid Herencia
La Herencia: Teoría (1)
Introducción a la Herencia Presentación basada en: 1. Construcción de Software Orientado a Objetos. Bertrand Meyer.1998. 2. Java 2., Curso de programación. Fco. Javier Ceballos. Ed. Alfoomega&RA-MA, 2003.
Partes de un programa en Java. A. Ejemplo de un Programa en Java /* Programa Ejemplo de Java: Muestra una Ventana Archivo: Ejemplo1.
Partes de un programa en Java A. Ejemplo de un Programa en Java /* class Ejemplo1 { //comienza la clase Ejemplo1. public static void main(string[] args) { // comienza el método main. JFrame miventana;
Caracteres y Cadenas Conversión de Datos Funciones y procedimientos Archivos cabecera. Fundamentos de programación
1 Caracteres y Cadenas Conversión de Datos Funciones y procedimientos Archivos cabecera Fundamentos de programación Agenda Caracteres y Cadenas Conversión de Datos Introducción a las funciones y procedimientos
Elementos de un programa en C
Elementos de un programa en C Un programa en C consta de uno o más archivos. Un archivo es traducido en diferentes fases. La primera fase es el preprocesado, que realiza la inclusión de archivos y la sustitución
PROGRAMACIÓN ORIENTADA A OBJETOS (L40629) Sabino Miranda-Jiménez
PROGRAMACIÓN ORIENTADA A OBJETOS (L40629) Sabino Miranda-Jiménez Encapsulamiento: Control de Acceso Clases en Java (1) UNIVERSIDAD AUTÓNOMA DEL ESTADO DE MÉXICO En Java se organizan las clases en paquetes
Clases. Java: Clases y Objetos. Clases. Clases. Modificadores de clase. Definición de una clase. Cada objeto es un ejemplar de una clase
Java: Clases y Objetos Clases La unidad fundamental de programación en Java es la clase Un programa Java está formado por un conjunto de clases Una clase es una plantilla que describe un conjunto de objetos
JAVA 7 Los fundamentos del lenguaje Java
Presentación 1. Historia 9 1.1 Por qué Java? 9 1.2 Objetivos del diseño de Java 10 1.3 Auge de Java 11 2. Características de Java 12 2.1 El lenguaje de programación Java 12 2.1.1 Sencillo 13 2.1.2 Orientado
Diseño Basado en Componentes. Curso 2008 / 09
Beneficios de OOP Diseño Basado en Componentes Ingeniería Informática Universidad Carlos III de Madrid Programación Orientada a Objetos (OOP) en VB.NET Diseño Basado en Componentes. Curso Conceptos orientados
Herencia e Interfaces
Herencia Introducción En C# cualquier dato es un objeto porque todos los tipos derivan implícitamente de este tipo, y heredan los métodos y campos definidos en dicha clase. Cada nuevo tipo tiene todo lo
Tema 4. Excepciones en Java
Programación en Java Tema 4. Excepciones en Java Luis Rodríguez Baena Facultad de Informática Excepciones (I) Permiten la captura de errores en tiempo de ejecución. El control de excepciones permite extraer
class Nombre_Clase extends Nombre_SuperClase { cuerpo de la clase extendida }
REUTILIZACIÓN DE CLASES:MODELO DE HERENCIA EN JAVA Java soporta herencia simple pero no múltiple. Lo hace mediante el mecanismo de extensión de clase. A partir de él, una subclase se extiende (hereda)
Tema 7: Polimorfismo. Índice
Tema 7: Polimorfismo Antonio J. Sierra Índice Introducción. Sobrecarga de métodos. Objetos como parámetros. Paso de argumentos. Devolución de objetos. Recursividad. Control de acceso. Static. Final. Argumento
Programación Orientada a Objetos con Java
Programación Orientada a Objetos con Java M.C. Jorge Eduardo Ibarra Esquer [email protected] Sobrecarga de métodos Java permite la definición de dos o más métodos que tengan el mismo nombre, dentro de la
Lenguaje de programación con JAVA
Pág. N. 1 Lenguaje de programación con JAVA Familia: Editorial: Autor: Tecnología de la información y computación Macro Eric Gustavo Coronel Castillo ISBN: 978-612-304-288-2 N. de páginas: 360 Edición:
Programación Orientada a Objetos con Java. Elementos Básicos del Lenguaje Java. Creación de un objeto. Creación de un objeto. Creación de un objeto
Programación Orientada a Objetos con Java Rafael Rivera López Elementos Básicos del Lenguaje Java II Ingeniería en Sistemas Computacionales Agosto-Diciembre de 24 Veracruz, Ver. Creación de un objeto Una
Necesidad de la herencia pertenencia variedad is a has a herencia variedad definir una clase modificando una o más clases añadir nuevos miembros
Necesidad de la herencia La mente humana clasifica los conceptos de acuerdo a dos dimensiones: pertenencia y variedad. Se puede decir que el Ford Fiesta es un tipo de coche (variedad o, en inglés, una
4.1 - OBJETOS Y CLASES
4.- Elementos relacionados con la Orientación a Objeto 4.1 - OBJETOS Y CLASES Intoducción Alan Kay (Smalltalk) Todo es un objeto. Un programa es un grupo de objetos diciendose unos a otros qué deben hacer
Clases en Java. Declaración de clases en Java 02/09/16. Ing. Roberto Martínez Román - public class Alumno { private int matricula;
Clases en Java ESCRIBIENDO CLASES [email protected] Declaración de clases en Java public class Alumno private int matricula; public void mostrardatos() System.out.println("Matrícula: " + matricula); Firma
GUÍA DE ESTILO EN JAVA
GUÍA DE ESTILO EN JAVA Formato de líneas 1. No usar más de 80 caracteres por línea (imagen de tarjeta). De esta forma se pueden visualizar las líneas completas con un editor de texto o en una hoja impresa
5. Sentencias selectivas o condicionales
60 A. García-Beltrán y J.M. Arranz 5. Sentencias selectivas o condicionales Objetivos: a) Describir el funcionamiento de las sentencias selectivas o condicionales (if-else y switch) b) Interpretar el resultado
La sintaxis básica para definir una clase es la que a continuación se muestra:
DEFINICIÓN DE CLASES Y OBJETOS EN C# Sintaxis de definición de clases La sintaxis básica para definir una clase es la que a continuación se muestra: class nombreclase miembros De este modo se definiría
PRÁCTICA DE LABORATORIO 4 Programación Orientada a Objetos
ESCUELA DE INGENIERÍA DE SISTEMAS DEPARTAMENTO DE COMPUTACIÓN PROGRAMACIÓN 2 PRÁCTICA DE LABORATORIO 4 Programación Orientada a Objetos Contenido Introducción...1 Objeto...2 Atributo...2 Métodos...2 Clase...3
GUIA 2: Repaso sobre uso de C#. Funciones, métodos y arreglos.
1 Programación II, Guía 2 1 Facultad: Ingeniería Escuela: Computación Asignatura: Programación II GUIA 2: Repaso sobre uso de C#. Funciones, métodos y arreglos. Objetivos Utilizar la sintaxis de las funciones
PROGRAMACIÓN ORIENTADA A OBJETOS
CONCEPTOS GENERALES PROGRAMACIÓN ORIENTADA A OBJETOS XAVIER CALDERÓN H. CONCEPTOS Paradigma: Palabra de origen griego que significa modelo o patrón. Paradigma de Programación: Propuesta de una comunidad
15. Parámetros o argumentos
Programación orientada a objetos con Java 161 15. Parámetros o argumentos Objetivos: a) Profundizar en el concepto de parámetro de una clase e indicar su mecanismo de funcionamiento. b) Interpretar el
La clase Integer y sus métodos. Los Operadores (concepto). Operadores Lógicos y a nivel de Bits. Operadores de desplazamiento. Concatenaciones. La Con
Fases de POO (Análisis y Diseño). Un ejemplo de Análisis y Diseño. Repaso de conceptos de Abstracción y ejemplos. Repaso y definición de Clases, estructura de una clase en Java. Declaración de atributos
Java en 2 horas. Rodrigo Santamaría
+ Java en 2 horas Rodrigo Santamaría + Generalidades 2 Desarrollado por Sun en 1995 Hereda mucha de la sintaxis de C (1972) Fuertemente tipado y orientado a objetos Aplicaciones compiladas a bytecode Gestión
FACULTAD DE INGENIERÍA
NOMBRE DEL PROFESOR: Ing. Héctor Manuel Quej Cosgaya NOMBRE DE LA PRÁCTICA: Estructuras de decisión PRÁCTICA NÚM. [ 5 ] LABORATORIO: MATERIA: UNIDAD: TIEMPO: Centro de Ingeniería Computacional Lenguaje
PROGRAMACIÓN ORIENTADA A OBJETOS (L40629) Sabino Miranda-Jiménez
PROGRAMACIÓN ORIENTADA A OBJETOS (L40629) Sabino Miranda-Jiménez Elementos de lenguaje: Identificadores Tipos de datos 2 Tipos de datos primitivos 3 Tipos de datos referenciados Clases Interfaces Arrays
Objetivos de la sesión. Aplicación de consola 7/30/11. Código con que se inicia un programa en Visual C# (aplicación de consola)
Objetivos de la sesión Entender el tipo de programas que se pueden realizar con aplicaciones de consola. Conocer el concepto de variable, la forma en que se declaran y su utilización. Conocer la forma
INTRODUCCIÓN AL PARADIGMA DE LA PROGRAMACIÓN ORIENTADA A OBJETOS CON JAVA
Objetivo: Identificar los concentos principales en java POO, que es una clase, un objeto así como sus características principales abstracción, modularidad, encapsulamiento, herencia, polimorfismo. INTRODUCCIÓN
ÍNDICE DEL LIBRO Y DEL EBOOK APRENDER A PROGRAMAR EN JAVA DESDE CERO. CURSO PASO A PASO.
ÍNDICE DEL LIBRO Y DEL EBOOK APRENDER A PROGRAMAR EN JAVA DESDE CERO. CURSO PASO A PASO. INDICE 1. INTRODUCCIÓN A JAVA 1.1. Qué es Java? 1.2. Es Java un lenguaje ideal para aprender a programar? 1.3. Es
