Unidad 2 Clases y Objetos

Share Embed Donate


Short Description

Download Unidad 2 Clases y Objetos...

Description

Programación Orientada a Objetos

I.T.S.A.

Unidad 2 Clases y Objetos .

Clases y Objetos. Como ya se había mencionado en temas anteriores una Clase es una arte de un rograma comuesta or un conjunto de miembros! estos ueden ser" Atributos! #$todos y Objetos Cuan Cuando do habl hablam amos os de Atributos! nos re%eri re%erimos mos a las caract caracterí erísti sticas cas rinciales o instancias a la cuales se recurren ara guardar y conser&ar un dato. 'l control y manejo de esos datos se lle&an a cabo en un Método or  medio de un algoritmo! donde un algoritmo es un conjunto de acti&idades (ue ermiten encontrar la solución un roblema o una tarea esecí%ica.

1.

)eclaración de clases" Para la declaración o imlementación de una clase! sabiendo (ue est* comuesta or miembros entre ellos el m$todo! ara los m$todo e+isten dos dos tios tios!! uno uno llam llamad ado o m$to m$todo do rim rimar ario io ,mai ,mainn- y el otro otro llam llamad ado o secundario! este ltimo se crea con cual(uier nombre o cadena de caracteres! (ue sir&an como identi%icador ara di%erenciar el m$todo or  su nombre. Una clase se uede dar de dos maneras! una de ellas donde sólo uede contar o imlementar nicamente nicamente m$todos secundarios y dicha clase se llama clase de alicación y cuando la clase contiene imlementado el m$todo rincial se le conoce como clase rincial! como se muestra en inciso a-! b- de la /igura 0.

Ing. C. S*nche1 P.

P*gina 0

Programación Orientada a Objetos

I.T.S.A.

1.1.  Atributos! #$todos! 'ncasulamiento.

os Atributos  se ueden di%erenciar dos maneras rincialmente! (ue son" os atributos de rimera instancia ,&ariables 3lobales- y los instanciados al m$todo ,&ariables ocales-! este ltimo se utili1a ara el en&ío y receción de datos conocidos como instancias o &ariables de acarreo! ara los asos de ar*metros 'l aso de ar*metro es una t$cnica en la maniulación de datos de un m$todo a otro o de una clase a otra. )eclaración de atributos" Para la declaración de los atributos tambi$n ti ene ciertas di%erencias entre las instanciadas a la clase y al m$todo" /ormato" #odoacceso Tiode)ato identi%icador4 Para los modos de acceso e+isten &arios modos! (ue son" redeterminado ,static-! blico ,ublic-! ri&ado ,ri&ate- y rotegido ,rotected-! cada uno con su resecti&a característica! las di%erencias se arecian al &incular m*s de una clase. 'l Tio de )ato! se re%iere a los tios de datos rimiti&os (ue son" 5um$rico 'ntero" 5um$rico /raccional Car*cter Cadena

short! int! long! byte doubl$! %loat char  String

'+isten otros tios llamados tios re%erenciados! no son m*s (ue tios re%abricados del mismo lenguaje de rogramación! ara el caso de ja&a! e+isten los" Array! inter%a1! clase! etc. Sinta+is! ara la declaración de &ariables y constantes de rimera instancias"

%inal

static int &ar4 static int &arCte6074

la di%erencia e+iste en (ue la constante se declara anteoni$ndole la alabra reser&ada 8%inal9! con esto se le indica (ue es una identi%icador constante! ,uesta en código! con la %igura 2- .

Ing. C. S*nche1 P.

P*gina 2

Programación Orientada a Objetos

I.T.S.A.

y ara la declaración de &ariables instanciadas al m$todo! son similares con la di%erencia (ue no tienen el modo de acceso con en la %igura :"

os Métodos no son m*s (ue algoritmos o sub algoritmos de un roblema general! estos m$todos ayudan a comrender mejor la solución de roblema! ya (ue cada uno de ellos uede reali1ar una tarea esecí%ica y hace (ue un roblema e+tenso se desglose en sub algoritmos! donde en un m$todo rincial ,main- se uedan controlar ara su interacción! como en la %igura ;.

'l t$rmino de Encapsulamiento! no m*s (ue una característica y caacidad del lenguaje ara hacer (ue un identi%icador soorte m*s de un dato a la &e1. Ing. C. S*nche1 P.

P*gina :

Programación Orientada a Objetos

I.T.S.A.

Para algunos lenguajes manejaron y maniularon los arreglos de datos! esto consistía en (ue un identi%icador declarado de cierto tio de dato udiera almacenar m*s de un elementos a la &e1 y oder  controlarlos or medio un índice! (ue seeamos el siguiente ejemlo ara la imlementación de m$todos! tal como lo indica el ejemlo del 'jercicio 0. /* Ejemplo 1 * Esta Clase permite probar la utilidad de los métodos;  * Elaborado por: */ import java.util.Scanner; class MetodoSuma { // El metodo Suma opera con dos variables public static void Suma( {int !"#$ %"#$ &"#; Scanner 'eer " ne Scanner(S%stem.in; S%stem.out.print()i+ite el vaolr de !); !" 'eer.ne!t,nt(; //lee un valor para ! S%stem.out.print()ijite el valor de %); %" 'eer.ne!t,nt(; //lee un valor para % &" !-%; //suma !-% S%stem.out.println()'a suma de )-!-) - )-%-) " )-&;  //prepara au0 los dems método de la aritmética  public static void main(Strin+23 var {   Suma(; // preparar au0 el men4 ue controle los métodos  

Pr*ctica0! Considera el ejemlo de la 'jercicio 0 y comlemente los m$todo de la aritm$tica de ?esta,-! #ultilar,-! #odulo,- y la )i&ison,-! controlados en un men. Pr*ctica 2. Una clase (ue haga lo mismo de la rimera r*ctica! donde se ali(ue el OtionPane! ara las entradas y salidas de dato

4.1. )eclaración! mensajes! aso de Par*metros! retorno de &alores.

Paso de ar*metro. 's una t$cnica en la rogramación (ue ermite y %acilita la comartición de datos comatibles de un sitio a otro! ara ello e+iste dos tios de aso de ar*metros"

Paso de parámetro por valor  Paso de parámetro por referencia

Ing. C. S*nche1 P.

P*gina B

Programación Orientada a Objetos

I.T.S.A.

'n el Paso de parámetro por valor ! consiste en (ue una &ariable otorga una coia de su &alor a otra &ariable! dicha de otra manera! asar el &alor o contenido de una &ariable a otra. Por ejemlo"  6D! siendo !D dos &ariables del mismo tio y la asignación como el aso de ar*metro m*s simle (ue uede haber. Para el Paso de parámetro por referencia! tiene un en%o(ue similar al de aso de ar*metro or &alor! con la di%erencia (ue en este lo hace a ni&el objeto! es decir! (ue un objeto concede una coia de la a otro objeto! lo comlejo en estos caso es! (ue los objeto trabajan con direcciones de memoria! e imlica (ue si se hace mal uso de la dirección! uede ro&ocar errores muy %uerte en la obetencion del os datos. Por ejemlo 5omClase ObjA! ObjE4 FFdeclaración de dos objetos ObjA 6 ne@ 5omClase,-4 FFcreación de memoria ara el objeto A ObjE 6 ObjA4 FFel ObjA! le asa una coia al ObjE 'n esta ltima instrucción es donde &e la alicación del aso de ar*metro or re%erencia. 'n base a lo descrito en el ejemlo de la 'jemlo 0! &eamos un caso ara la alicación en el en&ío de mensajes como aso de ar*metros en el 'jercicio 2 /*Ejercicio 5 1/5 * Esta clase nos permite mostrar el uso % la aplicaci6n de los paso de parmetros$ %a sea en * env0o del mensaje % el retorno de los datos */ import java!.sin+.78ption9ane;  class 99!alor  { // El método Suma recibe un par de operando$ sin retorno public static void Suma(int !$ int % { int &"#; Strin+ Cad")); & " !-%; // reali&a el clculo 5/5 Cad")'a Suma de )-!-) - )-%-) " )-&; 78ption9ane.soMessa+eialo+(null$Cad; //emite la salida public static void main(Strin+23 var  { int a"#$ b"#$ c"#; double &"#.#; Strin+ Cad"));  //El método de oat ivision(>oat !$ >oat % { return (!/%;  //calcula % retorna un Cad " 78ption9ane.so,nputialo+(null$)i+ite el valor de b ); b" ,nte+er.parse,nt(Cad; 99!alor 8bj " ne 99!alor(; 8bj.Suma(a$b; // llamando a Suma$ enviando dos ar+umentos c " 8bj.
View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF