5
CLASES Una clase es una agrupación de datos y de código que actua sobre esos datos, a la que se le da un nombre. Una clase contiene: Datos (se denominan Datos Miembro). Estos pueden ser de tipos primitivos o referencias. Métodos (se denominan Métodos Miembro). La sintaxis general para la declaración de una clase es: modificadores class nombre_clase { declaraciones_de_miembros ; } Por ejemplo: class Punto { int x; int y; } TIPOS DE CLASES Hasta ahora sólo se ha utilizado la palabra clave public para calificar el nombre de las clases que hemos visto, pero hay tres modificadores más. Los tipos de clases que podemos definir son: abstract Una clase abstract tiene al menos un método abstracto. Una clase abstracta no se instancia, sino que se utiliza como clase base para la herencia. final Una clase final se declara como la clase que termina una cadena de herencia. No se puede heredar de una clase final. Por ejemplo, la clase Math es una clase final. public Las clases public son accesibles desde otras clases, bien sea directamente o por herencia. Son accesibles dentro del mismo paquete en el que se han declarado. Para acceder desde otros paquetes, primero tienen que ser importadas.

Clases

Embed Size (px)

DESCRIPTION

CLASES

Citation preview

CLASESUna clase es una agrupacin de datos y de cdigo que actua sobre esos datos, a la que se le da un nombre. Una clase contiene: Datos (se denominan Datos Miembro). Estos pueden ser de tipos primitivos o referencias. Mtodos (se denominan Mtodos Miembro).!a sinta"is general para la declaracin de una clase es:modifcadores class nombre_clase { declaraciones_de_miembros ;}#or e$emplo:class #unto { int "% int y%} TIPOS DECLASES&asta a'ora slo se 'a utili(ado la palabra clave public para cali)car el nombre de las clases que 'emos visto, pero 'ay tres modi)cadores m*s. !ostipos de clases que podemos de)nir son:abstractUna clase abstract tiene al menos un mtodo abstracto. Una clase abstractano se instancia, sino que se utili(a como clase base para la 'erencia.fnalUna clase fnal se declara como la clase que termina una cadena de 'erencia. +o se puede 'eredar de una clase )nal. #or e$emplo, la clase Math es una clase )nal.public!as clases public son accesibles desde otras clases, bien sea directamente opor 'erencia. ,on accesibles dentro del mismo paquete en el que se 'an declarado. #ara acceder desde otros paquetes, primero tienen que ser importadas.synchronizableEste modi)cador especi)ca que todos los mtodos de)nidos en la clase son sincroni(ados, es decir, que no se puede acceder al mismo tiempo a ellos desde distintos t'reads% el sistema se encarga de colocar los -ags necesarios para evitarlo. Este mecanismo 'ace que desde t'reads diferentes se puedan modi)car las mismas variables sin que 'aya problemas de que se sobreescriban.CONSTRCTORES.odas las clases /ava tienen mtodos especiales llamados 0onstructores quese utili(an para iniciali(ar un ob$eto nuevo de ese tipo. !os contructores tienen el mismo nombre que la clase 11el nombre del constructor de la clase 2ectangle es 2ectangle(), el nombre del constructor de la clase .'read es .'read(), etc.../ava soporta la sobrecarga de los nombres de mtodos para que una clase puede tener cualquier n3mero de constructores, todos los cuales tienen el mismo nombre. 4l igual que otros mtodos sobrecargados, los constructoresse diferencian unos de otros en el n3mero y tipo de sus argumentos. 0onsideremos la clase 2ectangle del paquete $ava.a5t que proporciona varios constructores diferentes, todos llamados 2ectangle(), pero cada uno con n3mero o tipo diferentes de argumentos a partir de los cuales se puede crear un nuevo ob$eto 2ectangle. 4qu6 tiene las )rmas de los constructores de la clase $ava.a5t.2ectangle: public 2ectangle()public 2ectangle(int 5idt', int 'eig't)public 2ectangle(int ", int y, int 5idt', int 'eig't)public 2ectangle(Dimension si(e)public 2ectangle(#oint location)public 2ectangle(#oint location, Dimension si(e) Transact!S"L (.1,7!) es una e"tensin al ,7! de Microsoft y ,ybase. ,7!, que frecuentemente se dice ser un !engua$e de 83squedas Estructurado (por sus siglas en ingls), es un lengua$e de cmputo estandari(ado, desarrollado originalmente por 98M para reali(ar b3squedas, alterar y de)nirbases de datos relacionales utili(ando sentencias declarativas. .1,7! e"pande el est*ndar de ,7! para incluir programacin procedural, variables locales, varias funciones de soporte para procesamiento de strings, procesamiento de fec'as, matem*ticas, etc, y cambios a las sentencias DE!E.E y U#D4.E. Estas caracter6sticas adicionales 'acen de .1,7! un lengua$e que cumple con las caracter6sticas de un autmata de .uring.TRANSACT!S"L es un lengua$e muy potente que nos permite de)nir casi cualquier tarea que queramos efectuar sobre la base de datos% incluye caracter6sticas propias de cualquier lengua$e de programacin, caracter6sticas que nos permiten de)nir la lgica necesaria para el tratamiento de la informacin: : .ipos de datos. : De)nicin de variables. : Estructuras de control de -u$o. : ;estin de e"cepciones. : por supuesto los lengua$es incluidos en la plataforma .+E...ambin lo podremos e$ecutar directamente de manera interactiva, por e$emplo desde el editor de consultas de ,,M, (,7! ,erver Management ,tudio).T!S"L es un len#ua$e su%a%ente potente &ue nos ayu'a a 'efnir tareas %ientras traba$a%os con bases 'e 'atos( )ebi'o a &ue este len#ua$e tiene al#unas restricciones en el propio len#ua$e casi sie%pre lo *e%os utiliza'o en la creaci+n 'e los proce'i%ientos al%acena'os, -unciones 'e usuario y ta%bi.n en los tri##ers( /o'e%os hacer uso 'e T!S"L en len#ua$es 'e pro#ra%aci+n co%o pue'e ser 0isual 1asic( NET, C, 2a*a( Ta%bi.n lo po'e%os e$ecutar en un entorno S"L Ser*er Mana#e%ent Stu'io( Se 'ice &ue T!S"L es un len#ua$e %uy pareci'o al len#ua$e habla'o(Un ejemplo de T- SQL:,E!E0. ?