import java.util.Date;
import java.util.Calendar;
class Mammal
{//哺乳類
	private	Date birthday;
	public Mammal(){birthday=new java.util.Date();}
	public Mammal(Date date){birthday=date;}//引き数付きコンストラクタ
	public String getBirthday(){return birthday.toString();}
	public void print()
	{
		System.out.println("哺乳類のインスタンス：誕生は"+getBirthday());
	}
}
public class Dog extends Mammal
{//犬

	//追加メンバ
	private String name=null;
	public Dog(String name){this.name=name;}//親コンストラクタの呼び出し記述を省略
	public Dog(String name,Date date)
	{
		super(date);//親の引き数付きコンストラクタ呼び出し。最初に書くこと
		this.name=name;//
	}
	//親メンバの上書き
	public void print()
	{
		System.out.println(
			"犬のインスタンス：誕生は"+getBirthday()+" 名前は「"+name+"」"
		);
	}

	//----------------------------------
	//動作テスト用main関数
	static public void main(String[] args)
	{
		Calendar calendar=Calendar.getInstance();//実行環境でのカレンダーを用意
		calendar.set(2000,1,1,8,30,10);//カレンダーの日付を2000年1月1日8時30分10秒に設定
		Date date=calendar.getTime();//Dateインスタンスに値を変換
		
		Mammal m1=new Dog("タロー");
		Mammal m2=new Dog("ぽち",date);
		m1.print();
		m2.print();
	}
}