jtentor icon

TP1 - Caso Ejemplo d) - Libro.Java

jtentor | PRO | 09/03/20 02:05:42 PM UTC | 0 ⭐ | 1915 👁️ | Never ⏰ | []
Java |

3.77 KB

|

None

|

0 👍

/

0 👎

// Created by Julio Tentor <[email protected]>
//
 
 
import java.util.Objects;
 
public class Libro {
 
    //region Attributes
    private String titulo;
    private String autor;
    private String editorial;
    private Integer anioPublicacion;
    private Double precio;
    //endregion
 
    //region Getters and Setters
    public String getTitulo() {
        return this.titulo;
    }
    public String setTitulo(String titulo) {
        this.titulo = titulo;
        return this.titulo;
    }
 
    public String getAutor() {
        return this.autor;
    }
    public String setAutor(String autor) {
        this.autor = autor;
        return this.autor;
    }
 
    public String getEditorial() {
        return this.editorial;
    }
    public String setEditorial(String editorial) {
        this.editorial = editorial;
        return this.editorial;
    }
 
    public Integer getAnioPublicacion() {
        return this.anioPublicacion;
    }
    public Integer setAnioPublicacion (Integer anioPublicacion) {
        this.anioPublicacion = anioPublicacion;
        return this.anioPublicacion;
    }
 
    public Double getPrecio() {
        return this.precio;
    }
    public Double setPrecio(Double precio) {
        this.precio = precio;
        return this.precio;
    }
    //endregion
 
    //region Constructors
    public Libro() {
        this("sin título", "sin autor", "sin editorial", 0,0.0);
    }
    public Libro(String titulo, String autor) {
        this(titulo, autor, "sin editorial", 0,0.0);
    }
    public Libro(String titulo, String autor, Integer anioPublicacion) {
        this(titulo, autor, "sin editorial", anioPublicacion,0.0);
    }
    public Libro(String titulo, String autor, Integer anioPublicacion, Double precio) {
        this(titulo, autor, "sin editorial", anioPublicacion, precio);
    }
    public Libro(String titulo, String autor, Double precio) {
        this(titulo, autor, "sin editorial", 0, precio);
    }
    public Libro(String titulo, String autor, String editorial) {
        this(titulo, autor, editorial, 0,0.0);
    }
    public Libro(String titulo, String autor, String editorial, Integer anioPublicacion) {
        this(titulo, autor, editorial, anioPublicacion,0.0);
    }
    public Libro(String titulo, String autor, String editorial, Double precio) {
        this(titulo, autor, editorial, 0, precio);
    }
    public Libro(String titulo, String autor, String editorial, Integer anioPublicacion, Double precio) {
        setTitulo(titulo); // doble encapsulamiento
        setAutor(autor);
        setEditorial(editorial);
        setAnioPublicacion(anioPublicacion);
        setPrecio(precio);
    }
    //endregion
 
    //region Override Object basic methods
    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        Libro libro = (Libro) o;
        return Objects.equals(getTitulo(), libro.getTitulo()) &&
                Objects.equals(getAutor(), libro.getAutor()) &&
                Objects.equals(getEditorial(), libro.getEditorial()) &&
                Objects.equals(getAnioPublicacion(), libro.getAnioPublicacion());
    }
 
    @Override
    public int hashCode() {
        return Objects.hash(getTitulo(), getAutor(), getEditorial(), getAnioPublicacion());
    }
 
    @Override
    public String toString() {
        return "Libro " +
                "Título='" + getTitulo() + '\'' +
                ", Autor='" + getAutor() + '\'' +
                ", Editorial='" + getEditorial() + '\'' +
                ", Año de Publicación=" + getAnioPublicacion() +
                ", Precio=" + getPrecio() +
                '\n';
    }
    //endregion
}
 

Comments