Ir al contenido principal

Java Tip 3: Clases y objetos

Como lo vimos en el post anterior en Java todo es un objeto y cada clase por defecto pertenece a la clase padre Object. No importa que sea una clase String, Integer, Character,StringBuilder, etc. o una definida por el usuario, ninguna es excepción.

class Ticket extends Object{}

class Animal extends Object{}

class Persona extends Object{}

¿Qué es una clase?
Existen muchas definiciones, algunas de ellas son:
  • Plantillas para crear objetos.
  • Conjunto de objetos que comparten una estructura y comportamiento comunes.
  • Tipo definido por el usuario.
  • Combinación de unos datos específicos y de las rutinas que pueden operar con esos datos.
Síntaxis de una clase:
[modificador] class Clase {
   //Campos o atributos (datos o estado)
   //Métodos (subrutinas)
}  
Donde el modificador puede ser public (si es así, la clase debe llamarse de igual forma que el archivo) o default, pero nunca private o protected.

Nota: Para que exista un objeto primero debe existir el tipo definido.

Objetos
Un objeto es:
  • Una instancia de una clase definida.
  • Algo que tiene un estado, un comportamiento y una identidad.
  • Una instancia de una clase predefinida en Java o declarada por el usuario y referenciada por una variable que almacena su dirección de memoria.
Tengamos en cuenta una clase Camisa.  Sus datos miembro son color y talla y ambas son de tipo String. Además que posee métodos (que también son miembros de la clase) para acceder a ellos.

Camisa.java
package com.cityjava.modelo;

public class Camisa {
 private String color;
 private String talla;

 public Camisa(){}

 public Camisa(String color, String talla){
  super();
  this.talla=talla;
  this.color=color;
 }

 public Camisa(String color){
  this(color,"");
 }

 public void setColor(String color){
  this.color=color;
 }

 public String getColor(){
  return color;
 }

 public void setTalla(String talla){
  this.talla=talla;
 }

 public String getTalla(){
  return talla;
 }

 @Override
 public String toString() {
  return "Camisa [color=" + color + ", talla=" + talla + "]";
 }
 
 
}

Nota: Al ser variables de clase, tanto talla y color se inician de manera automática.

Ejemplo:
//Solo aplica para variables de clase

private byte myByte; // 0
private short myShort; // 0
private int myInt; // 0
private long myLong; // 0L
private float myFloat; // 0.0F
private double myDouble; // 0.0
private char myChar; // '\u0000'
private boolean myBoolean; // false

Para crear una instancia, debemos respetar la siguiente síntaxis:
Clase referencia = new ConstructorClase();
/**
* Donde: 
* Clase es el tipo definido por el usuario
* referencia es el nombre de la variable del tipo de clase
* new es el operador para crear nuevos objetos
* ConstructorClase es el constructor del tipo definido
**/

Tenemos ahora:

TestCamisa.java
package com.cityjava;

//importamos la clase Camisa
import com.cityjava.modelo.Camisa;

public class TestCamisa {

   //Método principal de la clase
   public static void main(String[] args){
     Camisa camisa = new Camisa();
     //...

   }
}

Nota: Nunca olvidar que tanto las variables y los métodos son miembros de la clase.

Links:
http://panamahitek.com/que-son-las-clases-en-java/
https://www.arkaitzgarro.com/java/capitulo-9.html


Comentarios

Entradas populares de este blog

Clojure para programadores Java (1)

Clojure es un lenguaje de programación similar a Lisp. Corre bajo la JVM (Java Virtual Machine) y emplea la programación funcional y orientada a objetos. El sitio oficial dice: Clojure es un lenguaje de programación robusto, práctico y rápido con un conjunto de características útiles que juntas forman una herramienta simple, coherente y poderosa. Creando el Hola,mundo en Clojure. holamundo.clj (println "Hola, mundo en Clojure!!" ) La extensión de un programa en este lenguaje es .clj Como se puede notar la base es colocar las sentencias entre parentesis. ( operador/funcion var1 var2 varN) Deberás descargar Clojure, tener instalado Maven y Java. A continuación se muestra una forma de obtener el JAR de Clojure para ejecutar nuestros programas. En la Línea final podemos acceder al shel o REPL del lenguaje. $ git clone https ://github.com/clojure/clojure.git $ cd clojure $ mvn -Plocal -Dmaven.test.skip=true package $ java -jar clojure.jar E

¿Cómo diseñar una API REST? (Youtube)

Java en ejemplos: creando nuestras propias excepciones

De errores y excepciones Una excepción en programación es una anomalía en el flujo de un programa. El programador puede anticiparse a ésta haciendo que su código pueda librarla y que el programa no termine abruptamente. Ejemplo. Una excepción podría ocurrir en un programa que lee archivos de texto, el programa es incapaz de leer líneas con acentos, apóstrofes, letras Ñ o símbolos raros. El programador tendría que saber manejar esas excepciones y mitigarlas. Un error es un problema en el programa que hará que éste termine abruptamente; el programador queda indefenso, no puede hacer nada al respecto para remediarlo. Este error puede ser falta de memoria o recursos del sistema, entre otros más. Ejemplo. Un programa pude cerrarse abruptamente al quedarse sin memoria el sistema operativo. En Java cada clase (propia o definida por el programador) es hija de la clase padre ``Object``. La clase ``Throwable`` es padre de la clase ``Exception`` y así sucesivamente. Como