Primeros pasos con Java, polimorfismo

Hace unos días hablamos del concepto de herencia, y dejamos para más adelante la explicación de una de las ventajas que nos otorga este mecanismo, el polimorfismo.

El concepto de Polimorfismo es uno de los fundamentos para cualquier lenguaje orientado a Objetos, las mismas raíces de la palabra pueden ser una fuerte pista de su significado: Poli = Multiple, morfismo= Formas , esto implica que un mismo Objeto puede tomar diversas formas.

A través del concepto de Herencia es posible ilustrar este comportamiento:
herenciacastEl poder manipular un Objeto como si éste fuera de un tipo genérico otorga mayor flexibilidad al momento de programar con Objetos, el término Polimorfismo también es asociado con un concepto llamado Late-Binding (Ligamiento Tardío), observe el siguiente fragmento de código:

<br /><%%KEEPWHITESPACE%%>     Figura a = new Circulo();<br /><%%KEEPWHITESPACE%%>     Figura b = new Triangulo();<br />

Leer más…

Primeros pasos con Java, herencia

Java permite el empleo de la herencia , característica muy potente que permite definir una clase tomando como base a otra clase ya existente. Esto es una de las bases de la reutilización de código, en lugar de copiar y pegar.

En java, como ya vimos la herencia se especifica agregando la claúsula extends después del nombre de la clase. En la claúsula extends indicaremos el nombre de la clase base de la cuál queremos heredar.

Al heredar de una clase base, heredaremos tanto los atributos como los métodos, mientras que los constructores son utilizados, pero no heredados.
Ejemplo:
Construyamos la clase Taxista.java con el siguiente código:

public class Taxista extends Persona {
     private int nLicencia;
     public Taxista(String nombre, String nLicencia) {
          super(nombre);  // Llamada al constructor de la clase base.
          this.nLicencia = licencia;
     }
     public void setNLicencia(int num) {
          nLicencia = num;
     }
     public int getLicencia() {
          return nLicencia;
     }
}

Leer más…

Primeros pasos con Java, estructuras de control

Por último, vamos a explicar cómo se utilizan las sentencias de control en java.
Las estructuras de control de Java son similares a las de C. Tenemos las estructuras de control condicionales y repetitivas clásicas de la programación estructurada.
La estructura de control más básica es if/else, que tiene la siguiente forma:

if (condición) {
   	sentencias;
} else {
   	sentencias;
}

Leer más…

Primeros pasos con Java, operadores

Los operadores realizan algunas funciones en uno o dos operandos. Los operadores que requieren un operador se llaman operadores unarios. Por ejemplo, ++ es un operador unario que incrementa el valor su operando en uno.
Los operadores que requieren dos operandos se llaman operadores binarios. El operador = es un operador binario que asigna un valor del operando derecho al operando izquierdo.
Los operadores unarios en Java pueden utilizar la notación de prefijo o de sufijo. La notación de prefijo significa que el operador aparece antes de su operando.
operador operando
La notación de sufijo significa que el operador aparece después de su operando:
operando operador
Leer más…

Primeros pasos con Java, clases

Como ya hemos comentado antes en Metodología de programación I, las clases son la médula espinal de cualquier programa en la programación orientada a objetos.

Una clase es el producto de enfocar la programación a los datos más que a las funciones. Por tanto una clase es una colección de datos y además para operar con ellos una serie de funciones propias de la clase. Veamos por ejemplo la clase “Fichas”:

public class Fichas {
   	String color;
   	public Fichas(String c){color=c;}
   	public String dameColor(){return(color);}
}

Leer más…

Primeros pasos con Java, ámbito

Una vez tenemos un poco de idea de cómo declarar variables en Java, tenemos que tener en cuenta desde dónde, en nuestro programa, podemos acceder a ellas. Esto lo definimos como ámbito de la variable.

Básicamente la norma es que la variable tiene validez dentro del bloque encerrado entre llaves donde ha sido declarada, ya sea dentro de una función o de por ejemplo una sentencia ‘if’. Quedará más claro con el siguiente ejemplo:

public class MiClase {

    public static void main(String[] args) {
        if (true) { // La sentencia if pregunta el valor lógico (verdadero/falso)
                    // en caso de ser cierto entra a cumplir las sentencias
                    // que hay entre las llaves.
            String s = &quot;Cadena de texto&quot;; //Declaramos la variable dentro del bloque if.
        }
    System.out.println(s); // En una consola de java mostraría la cadena de texto si fuera accesible.
    }
}

Leer más…

Primeros pasos con Java, variables

En nuestra anterior entrada, Primeros pasos con Java, palabras reservadas, aclaramos todas las palabras que no podemos utilizar para nombrar nuestras variables, pero… ¿Qué es una variable? Una variable es un espacio de memoria que utilizamos para guardar datos necesarios para nuestra aplicación.

Diciéndolo de otra manera, si tenemos una aplicación que necesita contar cuántas veces se ha pulsado un botón, tendremos que utilizar una variable que aloje en la memoria este dato.

Leer más…

Primeros pasos con Java, palabras reservadas

Después de conocer unas nociones básicas de programación, daremos un paso más para poder programar nuestras aplicaciones en android.

Android utiliza dos lenguajes distintos para programar sus aplicaciones, uno de ellos es XML, con el que se configuran las vistas de las aplicaciones. El otro, el que soporta toda la lógica de programación de las aplicaciones, es Java, lenguaje del que vamos a empezar a hablar.

Leer más…

Proyecto Simio – Table of contents

At the present time we’re translating this site into english, therefore, at the moment most of the posts will appear in spanish.

To make easier to see the content of this blog, in this post you’ll find an ordered table of contents with all publications made.

Actually we’re including Android programming tutorials. In the future we’ll try to add posts about Windows Phone, Java and C#, and also about databases as MySQL, SQLite and MongoDB.

We hope this table of contents makes easier to see what has been posted in the blog in the past.

Table of contents

Programming principles:

Leer más…