jueves, 24 de febrero de 2011
Encapsulamiento
Encapsulamiento de Clases
Polimorfismo
Polimorfismo
El polimorfismo es un concepto de la programación orientada a objetos que nos permite programar en forma general, en lugar de hacerlo en forma específica. En general nos sirve para programar objetos con características comunes y que todos estos compartan la misma superclase en una jerarquía de clases, como si todas fueran objetos de la superclase. Esto nos simplifica la programación.
Recuerde el ejemplo del ecosistema, en donde todos los objetos de las distintas especies heredaban de una superclase llamada Animal, que brindaba la información general de cualquier animal, independiente de su especie. Sin embargo, cada especie hace un uso particular de cada uno de los métodos u operaciones de la clase Animal.
El polimorfismo es un concepto de la programación orientada a objetos que nos permite programar en forma general, en lugar de hacerlo en forma específica. En general nos sirve para programar objetos con características comunes y que todos estos compartan la misma superclase en una jerarquía de clases, como si todas fueran objetos de la superclase. Esto nos simplifica la programación.
Recuerde el ejemplo del ecosistema, en donde todos los objetos de las distintas especies heredaban de una superclase llamada Animal, que brindaba la información general de cualquier animal, independiente de su especie. Sin embargo, cada especie hace un uso particular de cada uno de los métodos u operaciones de la clase Animal.
QUE SON LAS PALABRAS PRIVATE, PROTECTED Y PUBLIC. QUE INDICAN.
Las palabras private, protected y public son atributos de un campo o un método y su significado es el siguiente:
- private: El campo o método sólo es visible dentro de la clase donde se define.
- protected: El campo o método es visible en la clase en donde se define y en cualquiera de sus subclases.
- public: El campo o método es visible en cualquier clase.
- Ninguna de las anteriores: El campo o método es visible en cualquiera de las clases pertenecientes al paquete en donde se define.
Ejemplo:
class B
{
public void MetB()
{
A a= new A();
a.pubc= 1; // Ok
a.priva= 2; // error, privado
a.protb= 3; // error, B no es
// subclase de A
a.MetPub(); // Ok
a.MetPriv(); // error, privado
}
}
Tipos de Clases
Defición:
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.
synchronizable
Este modificador especifica que todos los métodos definidos en la clase son sincronizados, es decir, que no se puede acceder al mismo tiempo a ellos desde distintos threads; el sistema se encarga de colocar los flags necesarios para evitarlo. Este mecanismo hace que desde threads diferentes se puedan modificar las mismas variables sin que haya problemas de que se sobreescriban.
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.
synchronizable
Este modificador especifica que todos los métodos definidos en la clase son sincronizados, es decir, que no se puede acceder al mismo tiempo a ellos desde distintos threads; el sistema se encarga de colocar los flags necesarios para evitarlo. Este mecanismo hace que desde threads diferentes se puedan modificar las mismas variables sin que haya problemas de que se sobreescriban.
Subclase
Definición:
Se declara que un clase es una subclase de otra clase dentro de La declaración de Clase. ç
Ejemplo:
Supongamos que queremos crear una subclase llamada SubClase de otra clase llamada SuperClase. Se escribiría esto:
class SubClass extends SuperClass {
. . .
}
Se declara que un clase es una subclase de otra clase dentro de La declaración de Clase. ç
Ejemplo:
Supongamos que queremos crear una subclase llamada SubClase de otra clase llamada SuperClase. Se escribiría esto:
class SubClass extends SuperClass {
. . .
}
Herencias
Definición:
La herencia es una característica de algunos lenguajes de programación orientados a objetos, que permite crear objetos a base de otros ya existentes. Como ya hemos comentado en clases, la Orientación a objetos permite la reutilización de código. Llamaremos superclase, a la clase de la cual heredamos, y en el caso de Java, solo podremos heredar de una sola clase. La clase de la cual heredamos, nos aporta todas las funciones y métodos que esta posee, dejando así más fácil su implementación.
Ejemplo:
public class max extends leet {
String msg;
public void max (String text) {
this.msg = text;
System.out.println(“Max rulez xD”);
}
}
La herencia es una característica de algunos lenguajes de programación orientados a objetos, que permite crear objetos a base de otros ya existentes. Como ya hemos comentado en clases, la Orientación a objetos permite la reutilización de código. Llamaremos superclase, a la clase de la cual heredamos, y en el caso de Java, solo podremos heredar de una sola clase. La clase de la cual heredamos, nos aporta todas las funciones y métodos que esta posee, dejando así más fácil su implementación.
Ejemplo:
public class max extends leet {
String msg;
public void max (String text) {
this.msg = text;
System.out.println(“Max rulez xD”);
}
}
Destructor
Definición:
Un destructor es un método que se invoca automáticamente cuando el objeto se destruye. Java no posee destructores, porque tiene recolección de basuras. C++ posee destructores.
Ejemplo:
La sintaxis que se usa para definir un destructor es la siguiente:
Un destructor es un método que se invoca automáticamente cuando el objeto se destruye. Java no posee destructores, porque tiene recolección de basuras. C++ posee destructores.
Ejemplo:
La sintaxis que se usa para definir un destructor es la siguiente:
<nombreTipo>() { <código> } |
Constructor
Definición:
El constructor de una clase es un método estándar para inicializar los objetos de esa clase.
Ejemplo:
Los constructores se declaran en el momento de definir la clase:
El constructor de una clase es un método estándar para inicializar los objetos de esa clase.
Ejemplo:
Los constructores se declaran en el momento de definir la clase:
class A { int x, y; A() { x=0; y=0; } // el constructor } A a= new A(); a.Print(); // 0 0
Metodo
Definición:
Acciones que puede hacer la entidad consigo misma o con los atributos.
Ejemplo:
public static void main ( String Args [] ) { // Creación del método principal.
Acciones que puede hacer la entidad consigo misma o con los atributos.
Ejemplo:
public static void main ( String Args [] ) { // Creación del método principal.
}
Objeto ¿ Como se crea ?
Una vez que se tiene definida la clase a partir de la cual se crearán los objetos se está en la posibilidad de instanciar los objetos requeridos.
Para la clase Usuario del ejemplo anterior podemos crear un objeto de la siguiente manera:
DataInputStream in=new DataInputStream (System.in);
Para la clase Usuario del ejemplo anterior podemos crear un objeto de la siguiente manera:
DataInputStream in=new DataInputStream (System.in);
como se crea una clase
Es una entidad de programacion con metodos y atributos que tiene particularidades fragmentos de codigos.
public class ejemplo {
}
Suscribirse a:
Entradas (Atom)