Aprende a programar en Java Gratis 2024

Esta publicación tiene como propósito encaminarte al mundo de la programación orientada a objetos, como java.

Para esta ocasión, evitaré pasar por conceptos como lo que es una computadora, un software, informática, qué es un programa, etc.

La programación puede parecer difícil y en ocasiones lo es, pero de esto se trata esto, de siempre tener retos, de querer superarse y sobre todo de solucionar. La programación es dar soluciones a problemáticas mediante código.

Espero que este blog te ayude a desarrollar la lógica de programación y entender el código. Suena difícil, pero créeme que no lo es tanto, sólo que no lo conoces, pero una vez que pruebes tu primer programa, ya no vas a querer parar.

Y antes de comenzar, tengo que advertir que, si no te gusta la informática o los problemas, no te va a gustar programar, porque esto es algo meramente informático y es estar conectado con la computadora, además de los retos que muchas veces vas a enfrentar. Así que es algo que deberías considerar, pero si te animas, muy probablemente sea la mejor decisión de tu vida.

PRINCIPIOS DE LA PROGRAMACIÓN ORIENTADA A OBJETOS

También llamada por sus siglas POO, son principios que te ayudarán a entender como funcionan estos lenguajes y al inicio podrá sonar abstracto, pero no es nada del otro mundo, después lo estarás usando sin darte cuenta.

ABSTRACCIÓN
La abstracción en POO se refiere a enfocarnos en las características más importantes de un objeto y omitir los detalles menos relevantes. En otras palabras, es como ver un vehiculo y pensar en sus funciones principales (como conducir, frenar, acelerar) en lugar de preocuparse por cómo funciona internamente cada parte del motor o el sistema de frenos.

ENCAPSULAMIENTO
En el caso de POO, se refiere a agrupar los datos (atributos) y métodos (funciones) relacionados en una clase, y luego controlar el acceso a estos datos desde fuera de la clase. Por ejemplo, en la clase “vehiculo.java” encapsula datos como el color, número de puertas, tipo de vehículo y también encapsula algunos métodos para el acceso a esos datos.

public class Vehiculo {

    private String marca;
    private String modelo;
    private String color;
    private Integer NumeroPuertas;

    public String getMarca() {
        return marca;
    }

    public void setMarca(String marca) {
        this.marca = marca;
    }

    public String getModelo() {
        return modelo;
    }

    public void setModelo(String modelo) {
        this.modelo = modelo;
    }

    public String getColor() {
        return color;
    }

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

POLIMORFISMO
El polimorfismo quizá sea de los principios que más podrían sentirse difíciles al momento de querer entenderlos, pero explicado de forma sencilla, es darle comportamientos distintos a un objeto, por ejemplo, cuando tienes una clase llamada “personaje”, pero entendemos que en un videojuego, pueden haber distinto stipos de personaje, como un enemigo y también sabemos que los enemigos comparten algunos comportamientos con el personaje general, pero a su vez no tienen los mismos comportamientos y además, sin herencia, no existe el polimorfismo.

Siguiendo el mismo ejemplo de arriba, no es necesario que se entienda a la primera, pero el siguiente ejemplo te podría servir para entender un poco. Y sino lo entiendes, no te preocupes, después lo entenderás de forma práctica.

public class EjemploPolimorfismo {

    public void imprimirDetalles(Vehiculo vehiculo) {
        System.out.println("Detalles del vehículo:");
        System.out.println("Marca: " + vehiculo.getMarca());
        System.out.println("Modelo: " + vehiculo.getModelo());
        System.out.println("Color: " + vehiculo.getColor());

        if (vehiculo instanceof Automovil) {
            Automovil automovil = (Automovil) vehiculo;
            System.out.println("Número de puertas: " + automovil.getNumeroPuertas());
        }
    }

    public static void main(String[] args) {
        // Creando un objeto de tipo Vehiculo
        Vehiculo vehiculo = new Vehiculo();
        vehiculo.setMarca("Toyota");
        vehiculo.setModelo("Corolla");
        vehiculo.setColor("Azul");

        // Creando un objeto de tipo Automovil
        Automovil automovil = new Automovil();
        automovil.setMarca("Ford");
        automovil.setModelo("Mustang");
        automovil.setColor("Rojo");
        automovil.setNumeroPuertas(2);

        // Creando una instancia de la clase EjemploPolimorfismo para probar el polimorfismo
        EjemploPolimorfismo ejemplo = new EjemploPolimorfismo();
        ejemplo.imprimirDetalles(vehiculo); // Pasando un objeto de tipo Vehiculo
        ejemplo.imprimirDetalles(automovil); // Pasando un objeto de tipo Automovil
    }
}

HERENCIA
La herencia es casi literal, en el caso de POO, es como pasar características y comportamientos de una clase a otra clase. Con el ejemplo de la clase “personaje” y la de un “enemigo”, la clase enemigo hereda de personaje, porque en efecto, es un personaje, tal vez podría heredar el comportamiento de caminar, del nombre, tamaño, etc.

Un ejemplo de herencia, donde la clase “Camioneta” está heredando de la clase “Vehiculo”, por lo que cuando se haga una instancia de la clase camioneta, también podremos heredar el comportamiento de la clase “Vehiculo”.

En otras palabras, una camioneta es un vehículo, pero también lo es un coche o un camión de carga, así que heredan de vehículo y en este caso, hereda el color,

public class Camioneta extends Vehiculo {

    private int capacidadCarga;
    private int altura;

}


Conceptos ultra básicos

Ahora vienen algunos conceptos últra básicos que necesitas saber si o sí, porque es lo que más vas a usar.

¿QUE ES UNA CLASE?
En Java, una clase es un modelo o plantilla para crear objetos. Define los atributos y comportamientos que los objetos de esa clase pueden tener. Los atributos representan el estado de los objetos, mientras que los métodos representan su comportamiento. Las clases también pueden tener constructores para inicializar objetos y pueden relacionarse mediante herencia para compartir características y comportamientos.Por ejemplo: la clase “Vehiculo.java”, esta clase podría tener atributos como color, marca, modelo, y métodos como acelerar, frenar, y girar. Estos atributos y métodos se definen dentro de la clase para que cualquier objeto creado a partir de esta clase tenga estas características y comportamientos.

public class Vehiculo {

    private String marca;
    private String modelo;
    private String color;
    private Integer NumeroPuertas;

    public String getMarca() {
        return marca;
    }

    public void setMarca(String marca) {
        this.marca = marca;
    }

    public String getModelo() {
        return modelo;
    }

    public void setModelo(String modelo) {
        this.modelo = modelo;
    }

    public String getColor() {
        return color;
    }

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

¿QUÉ ES UN OBJETO?
En Programación Orientada a Objetos, un objeto es una instancia concreta de una clase. Siguiendo el ejemplo del vehiculo, un objeto de la clase “vehiculo.java”, se habla de instancia porque la clase se cambia de estado y es justo cuando podemos asignarle valores a las variables que definimos. En la instancia de vehiculo (objeto de vehiculo).

Forma en la que se crea un objeto y se llena de información:

public class Main {
    public static void main(String[] args) {
    
        Vehiculo vehiculo = new Vehiculo();
        vehiculo.setMarca("Toyota");
        vehiculo.setModelo("Corolla");
        vehiculo.setColor("Rojo");

    }
}

VARIABLES
Una variable es una palabra a la que le declaramos un valor, estas variables se tuvieron que haber pensado en la abstracción. La variable tiene un una estructura, como buena práctica de encapsulamiento, se declara la variable como privada, con el modificador de acceso “private”, seguido del tipo de dato y al final el nombre de la variable.

Como ejemplo en java:

public class Vehiculo {

    private String marca;
    private String modelo;
    private String color;
    private int precio;
    
}


COSAS QUE DEBES DE SABER SÍ O SÍ

Los siguientes links son temas muy importantes, sin ellos no aprenderás nada, así que debes leerlos todos, te los voy a dejar ordenados, pero de forma separada, para que está publicación no se haga difícil de leer. Así que te dejo la siguiente lista y espero verte pronto en una de las publicaciones prácticas. ¡Mucha suerte!

Dejar un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

1 comentario en “Aprende a programar en Java Gratis 2024”

  1. Pingback: Modificadores de acceso en Java – Tecsharp Network