Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad


Apuntes sobre la Programación Orientada a Objetos, Apuntes de Tecnología de la Información

Apuntes de Metodología y Tecnología de la Programación sobre la Programación Orientada a Objetos, Programación en Java, Java Virtual Machine, Convenciones de Escritura, Variables y Operadores.

Tipo: Apuntes

2013/2014

Subido el 20/01/2014

Jaime_89
Jaime_89 🇩🇴

4.5

(107)

467 documentos

1 / 43

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
UNIDAD 0.
Concepto orientado a objetos (O.O.)
La importancia de la Programación Orientada a Objetos (POO) es que permite que los programadores diseñen
software en forma muy parecida a como perciben el mundo real, de manera que se puedan entender entre sí
los programadores y los no programadores.
La POO es el lenguaje para tratar y relacionar lo abstracto con los objetos reales.
Objetos: Son conjuntos de software, de datos y procedimientos, esta mezcla proporciona un medio más exacto
de representar objetos del mundo real en el software.
Ejemplo de objetos reales.
Nombre (o Id): León.
Lo que es (color olor aspecto): Amarillo, grande con melena.
Lo que hace (conducta): duerme, ruge.
Ejemplo de objetos en programación:
Nombre: Nube.
Variables: string color=blue;
int tamaño=25;
int cant_agua: 25;
Funciones: llover ();
evapora ();
nevar ();
Esto es en general una clase.
Una clase es una descripción de atributos y funciones, y tiene la sintaxis como un tipo de dato.
Objeto es la materialización de una clase.
Ejemplo:
int a;
nube nube1;
nube1.color=blanco;
1
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28
pf29
pf2a
pf2b

Vista previa parcial del texto

¡Descarga Apuntes sobre la Programación Orientada a Objetos y más Apuntes en PDF de Tecnología de la Información solo en Docsity!

UNIDAD 0.

Concepto orientado a objetos (O.O.) La importancia de la Programación Orientada a Objetos (POO) es que permite que los programadores diseñen software en forma muy parecida a como perciben el mundo real, de manera que se puedan entender entre sí los programadores y los no programadores. La POO es el lenguaje para tratar y relacionar lo abstracto con los objetos reales. Objetos: Son conjuntos de software, de datos y procedimientos, esta mezcla proporciona un medio más exacto de representar objetos del mundo real en el software. Ejemplo de objetos reales. Nombre (o Id): León. Lo que es (color olor aspecto): Amarillo, grande con melena. Lo que hace (conducta): duerme, ruge. Ejemplo de objetos en programación: Nombre: Nube. Variables: string color=blue; int tamaño=25; int cant_agua: 25; Funciones: llover (); evapora (); nevar (); Esto es en general una clase. Una clase es una descripción de atributos y funciones, y tiene la sintaxis como un tipo de dato. Objeto es la materialización de una clase. Ejemplo: int a; nube nube1; nube1.color=blanco;

nube1.tamaño=100; nube nube2; nube2.color=gris; nube2.tamaño=200; nube1.llover (); nube2.llover (); UNIDAD 1 Programación en Java. Origen del Java. En un principio Java se llamó OAK y fue dirigido a electrodomésticos, pero fracasó. En 1995 se retomó este lenguaje ahora aplicado a Internet con el nombre de Java, y esta vez tuvo éxito. El nombre de Java viene de una isla de Indonesia y su logotipo es una taza de café. Java Virtual Machine. Al realizar un programa en Java se realiza un archivo con extensión *.java, y al compilarlo e ejecutable tiene extensión *.class. En ese ejecutable el 80% se usa para hacer lo que se le programó, y el 20% para el manejo de plataforma (Windows, Linux, Solaris). De ese proceso se encarga el Java Virtual Machine; por ésta razón es que los virus disminuyen pero la compilación es lenta. Entorno del Lenguaje. Al instalar Java J2SDK1.4 crea las carpetas bin, demo, include, JRF, lib; todo esto muy similar a C++. Editor. El editor que usaremos será el Jcreator Integrated Development Enviroment, pero cabe señalar que no es el único, también existen como el JBuilder, IDE etc. Glosario:

  • API: Application Programming Interface (Ayuda).
  • J2EE, J2SE, J2ME: Versiones de Java, Enterprise Edition, Estándar Edition, y Micro Edition.
  • JDK: Java Development Kit.
  • JRE: Java Runtime Enviroment.
  • AWT: Abstract Window Toolkit.
  • SWING: AWT mejorado.
  • JDBC: Java Database Connectivity.
  • Applet: Aplicación que se ejecuta desde un Browser.
  • Servlet: Aplicación sin interfaz gráfica que se ejecuta en un servidor de Internet.
  • Bean: Rutinas para transmisión entre aplicaciones.

Operadores: Aritméticos: + , −, /, *, % Relacionales: <>, <=, <, > Lógicos: &&, || Declaración e Instanciación de Objetos Hay tres formas:

  • Forma Universal: clase objeto=new Clase(); Integer var=new Integer(); // declaración e instancia junta.
  • Forma Orientada a Objetos:: Integer in; in=new Integer(58); // Se separa la declaración y la instancia. Forma Desechable: no lleva referencia del nombre, es como un efecto solamente. new miObjeto(), new String();

Clases, Métodos y Variables. Existen 3 formas de diseñar un programa dependiendo de la complejidad del programa. Modo Main, modo Objeto y Constructor y modo Objeto y Método. Modo Main: class Mayor { public statis void main (String arg[]) { int a=12,b=13, c=5, d=4, m, n, o; System.out.println(prueba +a); m=Math.max(a,b); n=Math.max(c,d); o=Math.max(m,n); System.out.println(mayor +o); System.out.println(Math.max( Math.max(a,b) , Math.max(c,d) ); } } Constructor: es un método del mismo nombre de la clase y se utiliza normalmente para inicializar a las variables. Modo Objeto y Constructor:

class Mayor { int a,b,c,d; Mayor(int x, int y,int z, int d) { a=x; b=y; c=z; this.d=d; } public static void main (String arg[]) { Mayor m=new Mayor(12,13,4,5); System.out.printl(Math.max(Math.max(a,b),Math.max(c,d))); } } Public: se define como la única clase de ese tipo, y si se define public deberá ser igual que el nombre del archivo, si no marcará error. Modo Objeto y Método: public class Mayor { calcula (int a, int b, int c, int d) { int r=(Math.max(Math.max(a,b),Math.max(c,d))); return r; } public static void main (String arg[]) { int a=12, b=14, c=15, d=8; Mayor ma; ma=new Mayor(); System.out.println(El mayor es: +ma.calcula(a,b,c,d)); } } Programas que calculan el área de un círculo de las tres formas: class Circulo { public static void main (String arg[])

Packages e Imports. Packages: es un grupo de clases compiladas que se utilizan posteriormente con un import. Para crear el propio Package se pondrá al inicio del programa Pakage(nombre). Los packages mas comunes son:

import java.AWT; //ventanas import java.io; //archivos import java.util; //utilerías import java.Applet; //aplicaciones de Internet import java.Graphics; //gráficos import java.NET; //usa protocolos de red TCP/IP

Modificadores de Acceso Clases: Sintaxis: class nombreClase{ } Tipos de modificadores:

  • Public: hace a la clase accesible desde otra clase o package.
  • Abstract: se define como clase base para heredar, no se puede instanciar. Ejemplo: Math, Graphics.
  • Final: evita subclases, no hereda, es una medida de seguridad contra hackers. Metodos: Sintaxis: nombre_del_metodo(<parámetro>){ } Tipos de modoficadores:
  • Public.
  • Protected
  • Private
  • Synchronizable: se utiliza para eventos concurrentes o multitareas.
  • Static: se ejecuta sin necesidad de hacer una instancia de un objeto.
  • Final Transient: atributos que no se graban cuando se archiva un objeto, no forma parte de estado permanente del mismo.
  • Volatile: son variables modificadas asíncronamente por objetos en diferentes trees.
  • Native: se utiliza para usar código de otro lenguaje.

Estructura Básica de un Programa. package pak; // opcional import java.AWT.*; public class Prueba { //atributos int altura; Button boton1; //metodo constructor Prueba() { new boton1; } class uno { metodos() } metodos(); public static vois main (String arg[]) { new Prueba(); }// instancia de la clase } Tipos de Clases. Anónima: Se utiliza para manejo de eventos, en vez de definir el nombre de la clase se pasa directamente a la implementación del código.

  • Adapter: Es la versión abreviada de la interfaz gráfica.
  • Principal: es la clase contenedora o más grande (Public).
  • Internas: Es cada una de las clases que se encuentran dentro de la clase pincipal. Interface: Es un conjunto de declaraciones de métodos vacíos (sin código), el programador inserta el código de esos métodos, su objetivo es establecer flujos de control y para programar más genéricamente.

Comandos Super y This. Super: llama al constructor de la clase padre o clase escendente (también llama a métodos de la clase ascendente). This: señala a variables o métodos de la clase presente o actual. Ejemplos:

Se declara e instancia la clase principal, es el inicio de la ejecución. Interface. import java.awt.; import java.awt.event.; public class dameMes extends Frame implements ActionListener { Textfield a,b; Button enter,salida; public dameMes() { setTitle (Lee número y da Estación); a= new TextField(4); a=new TextField(mes,14); enter=new Button(enter); salida=new Button(exit); enter.addActionListener(this); salida.addActionListener(this); add(a); add(enter); add(b); add(salida); setLayout(new FlowLayout()); setVisible(true); setSize(400,200); } public void actionPerformed (ActionEvent e) { if(e.getSource()==enter) { String s=new String(a.getText()); Integer c3=new Integer(); int c2 = c3.parseInt(s); switch(c2)

{ case 12: case 1: case 2: estación=Invierno; break;. . . } b.getText(estacion); } if(e.getSource()==salida) System.exit(0); } public static void main (String arg[]) { dameMes d=new dameMes(); } } Manejo de Excepciones. Consiste en monitorear condiciones factibles de generar un error y transferir el control del programa a un código específico para manejar dichas excepciones. Utilización del Try−catch: 1.− Enciérrese el código que se quiere monitorear dentro del bloque Try. 2.− Inmediatamente después se incluye un Catch y un bloque con la excepción adecuada para ese error. Ejemplo: Class Exc { public static void main (String arg[]) { int d=0; try{ int a=42/d; System.out.println(¿imprimirá?); }

class manda{ static void metodo1(){ try{ throw new NullPointerException(demo); } catch (NullPointerException e) { System.out.println(catched); throw e; } } public static void main (String arg[]){ try{ metodo1(); } catch(NullPointerException e) { System.out.println(rechazada+e); } } } Comentarios en Java. Al igual que en C, los comentarios se hacen con // y con /**/ UNIDAD 3 Clase Object, Number, Math, String y Format 3.1 Datos Primitivos. Son aquellos que los proporciona el lenguaje y existen diferentes tipos: Numéricos enteros.

Nombre del Tipo Tamaño en Bytes Rango Byte 1 −128 a 127 Short 2 −32768 a 32767 Int 4 −2³¹ a 2³¹ Long 8 −2 ³ a 2

Numéricos decimales.

Nombre del Tipo Tamaño en Bytes Rango

Float 4 −3.4x10³ a 3.4x10³ Double 8 −1.7x10³ a 1.7x10³

Tipo carácter.

Nombre del Tipo Tamaño en Bytes Rango Char 2 Conjunto de caracteres

Tipo lógico(booleano).

Nombre del Tipo Tamaño en Bytes Rango boolean 1 True, false

3.2 ADT Abstract Data Type, datos en envoltura. Generan objetos y tienen métodos y atributos. Un método abstracto es un método que se declara, pero no se define. Entre ellos tenemos: Integer, String, Byte..... 3.3 Cast (conversión de datos) float b; // modo cast int a=(int) b; //cambiar flotante a entero. Integer i=(Integer)a; //se combierte a integer. Modo de conversión. //Primitivo a ADT int a=45; Integer i=new Integer(a); //ADT a primitivo int c= i.intValue(); //si parámetros //Char primitivo a String ADT char v='4'; Character c= new Character(v); String s= new String(c.toString()); //String a primitivo char arr[]= s.toCharArray(); char uno=arr[0];

enter.addActionListener(this); salida.addActionListener(this); add(a); add(b); add(enter); add(c); add(d); add(e); add(salida); setLayout(new FlowLayout()); setVisible(true); setSize(400,400); } public void actionPerformed(ActionEvent p){ if (p.getSource()==enter) { m=Math.round(Math.random()10); n=Math.round(Math.random()10); m1=m1+m; n1=n1+n; if(m1>n1) { c1++; } if(m1<n1) { c2++; } if(m1==n1) { c3++; }

int m2=(int)m; int n2=(int)n; int m3=(int)m1; int n3=(int)n1; Integer i=new Integer(m2); a.setText(i.toString()); Integer j=new Integer(n2); b.setText(j.toString()); Integer k=new Integer(m3); c.setText(k.toString()); Integer l=new Integer(n3); d.setText(l.toString()); if((c1>2)||(c2>2)) { enter.disable(); if((c3>c1)&&(c3>c2)) { e.setText("Esto es un empate"); } if(c1>c2) { e.setText("El ganador es el Jugador 1"); } if (c1<c2){ e.setText("El ganador es el jugador 2"); }

import java.text.SimpleDateFormat; class formatos{ psvm{ Date fecha= new Date(); //información del día (fecha y hora) SimpleDateFormat sd; sd=new SimpleDateFormat("ddMMMYYYY hh:mm:ss YYYY); SOP(sd.format(fecha)); //23 FEB 2004 11:21:55 2004 } } Clases de uso común. Class comunes{ psvm{ Character c= new Character(); char a[]= {'a', 'b', 's', ' ', 'A'}; if (c.isLetter(a[0])) SOP(a[0]+"es una letra"); // a es una letra if (Character.isLowerCase(a[1])) SOP("es minuscula"); SOP(c.isDigit(a[2])); //regresa un valor booleano true SOP(c.isUpperCase(a[4])); //true SOP(c.toUpperCase(a[0])); //A } } 3.7 Clase String, métodos más comúnes

class str{ psvm(s){ char c[]= {'J', 'A', 'V', 'A'}; String s3= new String(c,2,2); //s3=va String s1= new String(c); String s2= new String(s1); SOP(s1.equals(s2)); // regresa un booleano true SOP(s1==s2); //false a menos de que sean objetos hermanos o de la misma instancia. String s5= new String("JAVA"); SOP(s1.equalsIgnoreCase(s5)); //true SOP(s5.indexof("va")); // SOP(s5.indexof('v')); // SOP(s5.lastIndexof('a')); // SOP(s5.subString(3,1)); //A StringBuffer sb= new StringBiffer("Hello"); SOP(sb.charAt(1)); //e SOP(sb.append("Hola que)); //HelloHola que SOP(sb.insert(4, "oooo")); //HelloooooHola que SOP(sb.delete(4,8)); //Hellaque SOP(sb.reverse()); //euqalleH SOP(sb.replace(3,3,"was")); //uqawash SOP(sb.deletecharAt(0)); //uqallell

  • Elabore un programa que calcule el rfc : import java.awt.; import java.awt.event.; import java.util.StringTokenizer;