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

Java Tip 1: Importaciones por default

Tip 1 : Todas las clases del paquete java.lang se importan por defecto. Podríamos hacer algo como esto: import java.lang.System ; import java.lang.String ; import java.lang.Boolean ; import java.lang.Integer ; import java.lang.Short ; import java.lang.StringBuilder ; import java.lang.StringBuffer ; O cosas (aberrantes) como: //Traernos todas las clases del paquete java.lang import java.lang.* ; Sin embargo, no es necesario. Repitamos esto como un mantra: Todas las clases del paquete  java.lang  se importan por defecto, no es necesario escribir de más .

Java Tip 20: JDBC (2da parte)

Continuamos con esta serie sobre JDBC . Como dijimos la vez anterior JDBC( Java Database Connectivity ) es el estándar de conectividad de bases de datos de Java y proporciona un mecanismo para que los programas Java se conecten a las bases de datos. En este post veremos ejemplos de su uso. Requisitos: Tener nociones de Java.  Tener nociones de SQL (usaremos H2). Tener nociones de Maven. Creando una aplicación JDBC Crearemos una sencilla aplicación que se conecte a una BD H2 (ver  tutorial ). Pasos: Crearemos una tabla a la que llamaremos Cursos. La cual tendrá los siguientes campos: id, titulo, materia, instructor, fecha y hora. Crear la aplicación Java usando Maven. Crearemos instrucciones SQL para consultar la información, ingresar nuevos cursos, actualizar y eliminar registros. Ejecutar la aplicación con Maven. 1. Creamos la tabla con sus seis campos (agregaremos los datos con la aplicación Java): CREATE OR REPLACE TABLE CURSOS( id bigint ...

Lo nuevo de Java desde la versión 12 hasta la 22

Aquí unos enlaces a varias publicaciones sobre algunos nuevos aspectos del lenguaje Java, desde la versión 12 a la 22. Expresiones Switch en Java Una nueva funcionalidad en el lenguaje: las expresiones switch. https://emanuelpeg.blogspot.com/2025/01/expresiones-switch-en-java.html API de Servidor Web Simple en Java Una API de Servidor Web Simple que permite crear servidores HTTP ligeros sin necesidad de dependencias externas. https://emanuelpeg.blogspot.com/2025/02/api-de-servidor-web-simple-en-java.html Clases Record Una implementación de las data-clases o del patrón Data Transfer Object, un tipo de clase cuyo único propósito es impulsar la programación con datos inmutables. https://alquimistadecodigo.blogspot.com/2025/02/java-clases-record.html https://emanuelpeg.blogspot.com/2025/02/record-en-java.html Clases Selladas y coincidencia de patrones en Java https://emanuelpeg.blogspot.com/2025/03/clases-selladas-y-coincidencia-de.html https://emanuelpeg.blogspo...