package parziale.p231110;

import java.util.Objects;

public class Libro{
	
	// Metodi di instanza
	private String ISBN;
	private int annoPubblicazione;
	
	// Metodo costruttore
	public Libro(
			String ISBN,
			int annoPubblicazione) {
		this.ISBN = ISBN;
		this.annoPubblicazione = annoPubblicazione;
	}
	
	// Metodi getter
	public String ISBN() {
		return ISBN;
	}
	
	public int annoPubblicazione() {
		return annoPubblicazione;
	}
	
	// Metodi di oggetto (fondamentali per HashSet usato in Libreria)
	@Override
	public boolean equals(Object obj) {
		if (obj == null) return false;
		if (obj == this) return true;
		if (!(obj instanceof Libro)) return false;
		
		Libro extObj = (Libro) obj;
		
		return this.ISBN.equals(extObj.ISBN);
	}
	
	@Override
	public int hashCode() {
		return Objects.hash(ISBN);
	}
	
}
