Sei sulla pagina 1di 16

Programacin Orientado a Objeto unidad ll Clase 2013 y Objeto

NOMBRE DEL ALUMNO: ALEJANDRO BALTAZAR DIEGO NOMBRE DE LA MAESTRA: ARISBE DEL SOCORRO ARANA KANTUN NOMBRE DE LA MATERIA: PROGRAMACION ORIENTADO OBJETO UNIDAD II: CLASES Y OBJETOS SEMESTRE: SEGUNDO SEMESTRE J1 GRUPO: A CARRERA: INGENIERIA EN SISTEMAS COMPUTACIONALES

FECHA DE ENTREGA: 01 de marzo de 2013

ALEJANDRO BALTAZAR DIEGO

Pgina 1

Programacin Orientado a Objeto unidad ll Clase 2013 y Objeto

Contenido
2.1) declaracin de clases: atributos, mtodos, encapsulamiento 2.2) instanciacin de una clase 2.3) referencia al objeto actual. 2.4) mtodos: declaracin, mensajes, paso de parmetros, retorno de valores. 2.5) constructores y destructores: declaracin, uso y aplicaciones. 2.6) sobrecarga de mtodos. 2.7) sobrecarga de operadores: concepto y utilidad, operadores unarios y binarios.

ALEJANDRO BALTAZAR DIEGO

Pgina 2

Programacin Orientado a Objeto unidad ll Clase 2013 y Objeto

Introduccin
Durante los captulos anteriores se han dado unas nociones bsicas de la sintaxis de Java. A partir de ahora es cuando entramos la verdadera potencia de Java como lenguaje orientado a objetos: las clases y los objetos. Aquellas personas que nunca hayan programado en un lenguaje orientado a objeto, o que no conozcan las nociones bsicas de paradigma conviene que lean el captulo Introduccin a la programacin orientada a objetos" de este tutorial, ya que a partir de ahora los conceptos que en l se exponen se darn por entendidos. Durante todo este captulo se va a trabajar en la construccin de una clase. El elemento bsico de la programacin orientada a objetos en Java es la clase. Una clase define la forma y comportamiento de un objeto. Y durante todo este captulo se va a trabajar en la construccin de una clase, Una clase define la forma y comportamiento de un objeto

ALEJANDRO BALTAZAR DIEGO

Pgina 3

Programacin Orientado a Objeto unidad ll Clase 2013 y Objeto


Unidad 2:

CLASES Y OBJETOS

Para crear una clase slo se necesita un archivo fuente que contenga la palabra clave reservada class seguida de un identificador legal y un bloque delimitado por dos llaves para el cuerpo de la clase. Un archivo de Java debe tener el mismo nombre que la clase que contiene, y se les suele asignar la extensin ".java". Por ejemplo la clase MiPunto se guardara en un fichero que se llamase MiPunto.java. Hay que tener presente que en Java se diferencia entre maysculas y minsculas; el nombre de la clase y el de archivo fuente han de ser exactamente iguales. Aunque la clase MiPunto es sintcticamente correcta, es lo que se viene a llamar una clase vaca, es decir, una clase que no hace nada. Las clases tpicas de Java incluirn variables y mtodos de instancia. Los programas en Java completos constarn por lo general de varias clases de Java en distintos archivos fuente. Una clase es una plantilla para un objeto. Por lo tanto define la estructura de un objeto y su interfaz funcional, en forma de mtodos. Cuando se ejecuta un programa en Java, el sistema utiliza definiciones de clase para crear instancias de las clases, que son los objetos reales. Los trminos instancia y objeto se utilizan de manera indistinta. Los atributos Los datos se encapsulan dentro de una clase declarando variables dentro de las llaves de apertura y cierre de la declaracin de la clase, variables que se conocen como atributos. Se declaran igual que las variables locales de un mtodo en concreto.

ALEJANDRO BALTAZAR DIEGO

Pgina 4

Programacin Orientado a Objeto unidad ll Clase 2013 y Objeto


Los atributos se pueden declarar con dos clases de tipos: un tipo simple Java (ya descritos), o el nombre de una clase (ser una referencia a objeto, vase el punto C. de este mismo apartado). Cuando se realiza una instancia de una clase (creacin de un objeto) se reservar en la memoria un espacio para un conjunto de datos como el que definen los atributos de una clase. A este conjunto de variables se le denomina variables de instancia. Los mtodos Los mtodos son subrutinas que definen la interfaz de una clase, sus capacidades y comportamiento. Un mtodo ha de tener por nombre cualquier identificador legal distinto de los ya utilizados por los nombres de la clase en que est definido. Los mtodos se declaran al mismo nivel que las variables de instancia dentro de una definicin de clase. En la declaracin de los mtodos se define el tipo de valor que devuelven y a una lista formal de parmetros de entrada, de sintaxis tipo identificador separadas por comas. Encapsulamiento Mecanismo de la POO que permite ocultar y proteger los detalles de la implementacin de una clase. Los cambios de implementacin de una clase no a fecta a la clase cliente de esta La clase encapsulado expone sus variables de instancia privadas, a travs de mtodos pblicos.

ALEJANDRO BALTAZAR DIEGO

Pgina 5

Programacin Orientado a Objeto unidad ll Clase 2013 y Objeto

2.2. INSTANCIACIN DE UNA CLASE.


Clases y Objetos Definicin de una clase: Para crear una clase slo se necesita un archivo fuente que contenga la palabra clave reservada class seguida de un identificador legal y un bloque delimitado por dos llaves para el cuerpo de la clase. Un archivo de Java debe tener el mismo nombre que la clase que contiene, y se les suele asignar la extensin ".java". Por ejemplo la clase MiPunto se guardara en un fichero que se llamase MiPunto.java. Hay que tener presente que en Java se diferencia entre maysculas y minsculas; el nombre de la clase y el de archivo fuente han de ser exactamente iguales. Una clase es una plantilla para un objeto. Por lo tanto define la estructura de un objeto y su interfaz funcional, en forma de mtodos. Cuando se ejecuta un programa en Java, el sistema utiliza definiciones de clase para crear instancias de las clases, que son los objetos reales. Los trminos instancia y objeto se utilizan de manera indistinta. Los atributos Los datos se encapsulan dentro de una clase declarando variables dentro de las llaves de apertura y cierre de la declaracin de la clase, variables que se conocen como atributos. Se declaran igual que las variables locales de un mtodo en concreto. Cuando se realiza una instancia de una clase (creacin de un objeto) se reservar en la memoria un espacio para un conjunto de datos como el que definen los
ALEJANDRO BALTAZAR DIEGO Pgina 6

Programacin Orientado a Objeto unidad ll Clase 2013 y Objeto


atributos de una clase. A este conjunto de variables se le denomina variables de instancia. Los mtodos Los mtodos son subrutinas que definen la interfaz de una clase, sus capacidades y comportamiento. Un mtodo ha de tener por nombre cualquier identificador legal distinto de los ya utilizados por los nombres de la clase en que est definido. Los mtodos se declaran al mismo nivel que las variables de instancia dentro de una definicin de clase. En la declaracin de los mtodos se define el tipo de valor que devuelven y a una lista formal de parmetros de entrada, de sintaxis tipo identificador separadas por comas

2.3. REFERENCIA AL OBJETO ACTUAL.


Referencia a los miembros del objeto actual mediante this Todo objeto puede hacer referencia a s mismo. Mediante la palabra clave this {lo que se conoce como una referencia this). En un mtodo, la referencia this puede utilizarse en forma implcita y explicita para hacer referencia a las variables de instancias y otros mtodos del objeto en el cual se haya llamadlo el mtodo. Si un mtodo contiene una variable local con el mismo nombre que un campo de esa clase, ese mtodo se referir a la variable local, en vez de referirse al campo. En este case, la variable local sombrea al campo en el alcance de ese mtodo. Sin embargo, el mtodo puede utilizar a this para hacer referencia al campo sombreado en forma explcita. Como se muestra en las llenas 3l a 33 para las variables de instancias sombreadas de la clase HoraSimple.

ALEJANDRO BALTAZAR DIEGO

Pgina 7

Programacin Orientado a Objeto unidad ll Clase 2013 y Objeto


2.4. MTODOS: DECLARACIN, MENSAJES, PASO DE PARMETROS, RETORNO DE VALORES.
METODOS: Un mtodo es un bloque de cdigo que tiene un nombre, tipo de acceso, tipo de retorno y una lista de argumentos o parmetros. Mtodos: Las clases constan de dos elementos principales: variables de instancia y mtodos. Una definicin de un mtodo consta de dos partes: cabecera y cuerpo. Modificadores de mtodos Los modificadores pueden ser public, protected o private. El modificador de acceso pblico indica que el mtodo puede ser llamado desde otro cdigo. El mtodo privado indica que el mtodo puede ser llamado solo por otros mtodos dentro de la clase. Acezando a Mtodos El operador punto(.) permite accesar a atributos y mtodos no privados de una clase. Dentro de un mtodo no se necesita usar esta notacin para accesar miembros locales del mtodo. Generalmente se crean mtodos set() y get() para accesar a miembros de un objeto que no es local. Mtodos Calling y Worker El mtodo calling es el que invoca o llama a otro mtodo para hacer algn trabajo.

ALEJANDRO BALTAZAR DIEGO

Pgina 8

Programacin Orientado a Objeto unidad ll Clase 2013 y Objeto


Inversamente, el mtodo worker hace algn trabajo para el mtodo que lo invoc. Clase es fcil. Solo incluye el nombre del mtodo worker y sus argumentos --Modificar el de la clase String sin crear objeto Creando mtodos y variables static Los mtodos y variables que son nicos en una instancia son llamadas mtodos de instancia y variables de instancia. Existen mtodos que no requieren instanciacin, como el mtodo main. Este es llamado mtodo de clase o mtodo esttico, ya que lo puedes invocar sin crear primero un objeto. Similarmente, las variables de clase o variables static se pueden usar sin crear un objeto. Mtodo main() Todas las aplicaciones Java comienzan llamando al mtodo main() que se sita en la clase cuyo nombre ha sido dado a la mquina virtual Java (JVM) para comenzar la ejecucin del programa. No todas las clases necesitan un mtodo main(), solo las clases que son el punto de arranque del programa. El mtodo main() se declara static, ya que es llamado por la mquina Java en tiempo de ejecucin antes de que se cree cualquier objeto. Los argumentos que se pasan al mtodo main() pueden ser cualquiera de la lnea de rdenes que se introduce cuando se ejecuta el programa.
ALEJANDRO BALTAZAR DIEGO Pgina 9

Programacin Orientado a Objeto unidad ll Clase 2013 y Objeto


RETORNO DE VALORES DE UN MTODO

La sentencia return se utiliza para salir del mtodo actual y devolver el valor especificado por el tipo de retorno del mtodo. Si el tipo de retorno del mtodo es void, la palabra reservada return se utiliza sola o se omite. Llamada de un mtodo class Matem { static long factorial (int n){ long p=1; for (int i=2;i<=n; i++) p*=i; return p; } // } Accesos a mtodos Cada mtodo tiene un tipo asociado que se utiliza para controlar el acceso al mtodo. El tipo de acceso puede estar ausente (no se especifica), public, private o protected Un mtodo public se puede llamar por cualquier cdigo que tenga la acceso a la clase. Un mtodo private solo se puede llamar desde otro mtodo de la clase en que se define el mtodo privado. Un mtodo protected se puede llamar desde otro mtodo de la clase en que mismo mtodo est definido y por cualquier otro mtodo de las clases que heredan de la clase en que est definido el mtodo.

ALEJANDRO BALTAZAR DIEGO

Pgina 10

Programacin Orientado a Objeto unidad ll Clase 2013 y Objeto


Tambin est disponible en cualquier objeto de las clases pertenecientes al mismo paquete que la clase en que est definido el mtodo. Paso de argumentos a mtodos Los argumentos se pasan a los mtodos en Java por valor. Se hace una copia del tipo de dato primitivo (int, float, ) o la referencia al objeto de la clase o array y se pasa al mtodo. Se suele denominar parmetro a la variable definida en el mtodo y que tiene un valor cuando se llama al mtodo (a veces tambin se le conoce como parmetro formal) y argumento (a veces tambin se le conoce como parmetro real) es el valor que se pasa al mtodo cuando se invoca. Paso de parmetros por valor Paso por valor (tambin llamado paso por copia) significa que cuando Java compila el mtodo y el cdigo que llama al mtodo, el mtodo recibe una copia de los valores de los parmetros. Si se cambia el valor de un parmetro variable local, el cambio solo afecta al mtodo y no tiene efecto fuera del mtodo. En la tcnica de paso por parmetro por valor, el mtodo receptor no puede modificar la variable del mtodo (parmetro pasado). IMPORTANTE!! La manera de pasar parmetros en Java es por valor.

Cuando se pasa un objeto, realmente lo que se pasa es una referencia al objeto, esa referencia, el mtodo llamado no puede modificarla (pasa la copia); s pueden modificarse los datos miembro del objeto.

Los arrays en Java se consideran objetos, podrn modificarse los elementos del array, pero no la referencia a ste. Mtodos abstractos Los mtodos abstractos se utilizan en clases abstractas para imponer una cierta funcionalidad a las subclases de las clases abstractas. Los mtodos abstractos se designan por la palabra reservada abstract y no tienen cuerpo.

ALEJANDRO BALTAZAR DIEGO

Pgina 11

Programacin Orientado a Objeto unidad ll Clase 2013 y Objeto


2.5. CONSTRUCTORES y DESTRUCCTORES
Un constructor es un conjunto de instrucciones diseadas para inicializar una instancia. Los parmetros pueden ser pasados al constructor de la misma manera que un mtodo. Su declaracin bsica es: [<modifier> <class_name> (<argument>*) { <statement> } ***Los constructores no son mtodos, ya que no pueden retornar valores y no tienen herencia. El constructor Default Cada clase tiene al menos un constructor. Si no se escribe un constructor, Java proporciona uno por default. Este constructor no tiene argumentos y tiene un cuerpo vaco. Si se declara un constructor en una clase que no tena constructores, se pierde el constructor por default. Sobrecarga de constructores As como los mtodos, los constructores pueden ser sobrecargados. La sobrecarga de constructores ofrece una variedad de maneras en que los objetos pueden ser creados e inicializados usando una sola clase. public class ConstructorPlayera{ public ConstructorPlayera(); public ConstructorPlayera(char codeInicial);

ALEJANDRO BALTAZAR DIEGO

Pgina 12

Programacin Orientado a Objeto unidad ll Clase 2013 y Objeto


public ConstructorPlayera(char codeInicial, int quantityInicial).

Destructores:
Un destructor es algn lenguaje del LPOO es un mtodo de una clase que se llama justo antes de una instancia de esa clase y se elimina de la memoria. No todos los lenguajes de programacin orientado a objeto suelen tener un destructor. Sobrecarga de Mtodos. Cuando esto sucede, los mtodos se dicen a sobrecargarse, y el proceso se conoce como la sobrecarga de mtodos. Sobrecarga de mtodos es una de las maneras que Java implementa el polimorfismo. Si nunca ha utilizado un lenguaje que permite la sobrecarga de mtodos y, a continuacin, el concepto puede parecer extrao al principio. Sobrecarga de Constructors. Adems de la sobrecarga de mtodos normales, tambin puede sobrecargar mtodos de constructor. De hecho, para la mayora las clases reales que cree, constructores sobrecargados ser la norma, no la excepcin. Para entender por qu, volvamos a la clase de cuadro desarrollada en el captulo anterior.

Un vistazo a pasar argumento. En general, hay dos maneras de que un lenguaje de programacin puede pasar un argumento a una subrutina. La primera es llamada por valor. Este mtodo copia el valor de un argumento en el parmetro formal de la subrutina. Por lo tanto, los cambios realizados en el parmetro de la subrutina no tienen efecto sobre el argumento. Recursin.

ALEJANDRO BALTAZAR DIEGO

Pgina 13

Programacin Orientado a Objeto unidad ll Clase 2013 y Objeto


Java soporta la recursividad. Recursin es el proceso de definir algo de s mismo. Lo que se refiere a la programacin Java, recursin es el atributo que permite un mtodo para llamar a s mismo. Un mtodo que se llama a s mismo se dice que es recursiva.

2.7 Sobrecarga de operadores: Concepto y utilidad, operadores unarios y binarios.


Java, a diferencia de C++, no soporta la sobrecarga de operadores. Esto significa que no es posible redefinir el entorno en el que acta un operador con respecto a los objetos de un nuevo tipo que el programador haya definido como propios. Un caso interesante, que se sale de la afirmacin anterior, es el operador + (signo ms), que se puede utilizar para realizar una suma aritmtica o para concatenar cadenas (Java lo sobrecarga internamente!). Cuando el signo ms se utiliza en esta ltima forma, el operando de la derecha se convierte automticamente en una cadena de caracteres antes de ser concatenada con el operando que se encuentra a la izquierda del operador +. Esto asume que el compilador sabe que el operando de la derecha es capaz de soportar la conversin. Operadores Aritmticos Java soporta varios operadores aritmticos que actan sobre nmeros enteros y nmeros en coma flotante. Los operadores binarios soportados por Java son: + * / suma los operados resta el operando de la derecha al de la izquierda multiplica los operando divide el operando de la izquierda entre el de la derecha

ALEJANDRO BALTAZAR DIEGO

Pgina 14

Programacin Orientado a Objeto unidad ll Clase 2013 y Objeto


% resto de la divisin del operando izquierdo entre el derecho

Como se ha indicado anteriormente, el operador ms (+), se puede utilizar para concatenar cadenas, como se observa en el ejemplo siguiente: En C++ no se soporta la concatenacin de cadenas con el operador ms (+); hay que utilizar la funcin strcat() para poder concatenar dos cadenas y el uso de esta funcin puede resultar peligroso porque no hay proteccin contra el traspaso de los lmites del array que se utiliza como destino de la cadena concatenada. El operador mdulo (%), que devuelve el resto de una divisin, a diferencia de C++, en Java funciona con tipos en coma flotante adems de con tipos enteros. Cuando se ejecuta el programa que se muestra en el ejemplo java401.java. Los operadores unarios que soporta Java son: + ++ -indica un valor positivo negativo, o cambia el signo algebraico suma 1 al operando, como prefijo o sufijo resta 1 al operando, como prefijo o sufijo

En los operadores de incremento (++) y decremento (--), en la versin prefijo, el operando aparece a la derecha del operador, ++x; mientras que en la versin sufijo, el operando aparece a la izquierda del operador, x++. La diferencia entre estas versiones es el momento en el tiempo en que se realiza la operacin representada por el operador si ste y su operando aparecen en una expresin larga. Con la versin prefijo, la variable se incrementa (o decremento) antes de que sea utilizada para evaluar la expresin en que se encuentre, mientras que en la versin sufijo, se utiliza la variable para realizar la evaluacin de la expresin y luego se incrementa (o decremento) en una unidad su valor.

Conclusin
ALEJANDRO BALTAZAR DIEGO Pgina 15

Programacin Orientado a Objeto unidad ll Clase 2013 y Objeto


En conclusin en esta unidad aprendimos mucho sobre como declarar las clases, que se clasifica por los atributos, mtodos encapsulamiento, y la unidad tiene como subtema la referencia del objeto actual y crear una clase slo se necesita un archivo fuente que contenga la palabra clave reservada class seguida de un identificador legal y un bloque delimitado por dos llaves para el cuerpo de la clase. La referencia al objeto actual y con los mtodos de la declaracin mensajes paso de parmetros y retornos y retorno de valores estos son muy importantes para realizar un programa por el programador y te recomiendo leer con atencin esta investigacin para poder entender este tema porque ser til en toda mi carrera y para la materia de programacin de orientado a objeto eso es todo por el momento espero que lo entendi con exactitud los temas.

ALEJANDRO BALTAZAR DIEGO

Pgina 16

Potrebbero piacerti anche