package oop.Upcastin_DownCasting;

public class Medium {
	private String title;
	private String autor;

	public Medium(String title, String autor) {
		this.title = title;
		this.autor = autor;
		System.out.println("Das ist Medium");
	}

	public void vater() {
		System.out.println("Das ist VaterMethode");
	}

	@Override
	public String toString() {
		return "Medium [title=" + title + ", autor=" + autor + "]";
	}

	public static void main(String[] args) {
		Medium vater = new Buch("Java", "obai", 12);
		System.out.println(vater.toString());
		Buch buch;

		if (vater instanceof Buch) {
			buch = (Buch) vater;
			buch.buch();
		}

	}

}

class Buch extends Medium {

	private int seitenZahl;

	public Buch(String title, String autor, int seitenZahl) {
		super(title, autor);
		this.seitenZahl = seitenZahl;
		System.out.println("Das ist Buch");
	}
	
	public void vater() {
		System.out.println("das ist vom Kind");
	}

	public void buch() {
		System.out.println("Das ist buchMethode");
	}

}
