java面向對象(封裝演示)

/*class PrivateDemo //封裝演示--錯誤
{
	public static void main(String[] args) 
	{
		Animals an = new Animals();
		an.name = "老虎";
		an.legs = -100;
		an.info();
		System.out.println("Hello World!");
	}
}
class Animals
{
	String name;
	int legs;
	public void eat()
	{
		System.out.println("俺在喫大餐,你走開");
	}
	public void sleep()
	{
		System.out.println("俺在睡大覺,你走開");
	}
	public void info()
	{
		System.out.println("俺叫   :"+name+"俺有   :"+legs+"條腿");
	}
}
*/
class PrivateDemo //封裝演示--改正後
{
	public static void main(String[] args) 
	{
		Animals an = new Animals();
		//an.name = "老虎";
		an.setLegs(-100);
		an.setName("老虎");
		System.out.println("俺叫   :"+an.getName());
		System.out.println("    俺有   :"+an.getLegs()+"條腿");
	}
}
class Animals
{
	private String name;
	private int legs;
	public void eat()
	{
		System.out.println("俺在喫大餐,你走開");
	}
	public void sleep()
	{
		System.out.println("俺在睡大覺,你走開");
	}
	//public void info()
    //{
	//	System.out.println("俺叫   :"+getName()+"    俺有   :"+getLegs()+"條腿");
	//}
	public void setName(String name)
	{
		this.name = name;
	}
	public String getName()
	{
		return name;	
	}
	public void setLegs(int i)
	{
		if (i<0 || ++i%2==0)
		{
			throw new RuntimeException("你是豬麼,怎麼可能會有這樣的腿");

		}
		else 
		{
			legs = i;
		}
	}
	public int getLegs()
	{
		return legs;
	}
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章