【训练6】 动物分类 (向下转换,对象调用方法)

【训练6】 动物分类
创建动物类,动物类有3个子类:鹰、青蛙和蝗虫。创建3个动物类,分别强制转换成3个子类,执行3个子类吃食物的方法。

  • 调用代码
/*【训练6】 动物分类
 * 创建动物类,动物类有3个子类:鹰、青蛙和蝗虫。创建3个动物类,
 * 分别强制转换成3个子类,执行3个子类吃食物的方法。
 * */

package JcDtCxlhJk;

public class Xl6 {

	public static void main(String[] args) {
		// TODO 自动生成的方法存根
		
		Animal a1 = new Eagle();
		a1.setName("鹰");
		System.out.print(a1.getName());
		((Eagle)a1).eat();//快速将父类对象强制转换子类对象,而不用再调用创建子类对象
		
		Animal a2 = new Frog();
		a2.setName("青蛙");
		System.out.print(a2.getName());
		((Frog)a2).eat();
				
		Animal a3 = new Grasshopper();
		a3.setName("蝗虫");
		System.out.print(a3.getName());
		((Grasshopper)a3).eat();

	}

}

  • 动物类代码
package JcDtCxlhJk;

public class Animal {
	public String name;
	
	public String getName() {			//返回动物名称
		return name;					//控制台输出名字
	}
	
	public void setName(String name) {	//设置动物名称
		this.name = name;
	}

}

  • 老鹰类
package JcDtCxlhJk;

public class Eagle extends Animal {
	public void eat() {
		System.out.println("吃青蛙\n");
	}

}

  • 青蛙类
package JcDtCxlhJk;

public class Frog extends Animal {
	public void eat() {
		System.out.println("吃蝗虫\n");
	}

}

  • 蝗虫类
package JcDtCxlhJk;

public class Grasshopper extends Animal {

	public void eat() {
		System.out.println("吃庄稼\n");
	}

}

【训练6】 动物分类 (向下转换,对象调用方法)_第1张图片

你可能感兴趣的:(Java从入门到精通,java,开发语言)