提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
任务:使用对象类型的转换,根据编程提示,完成猫类和动物类的转换,以及彼此方法和属性的调用。
编程要求
仔细阅读右侧编辑区内给出的代码框架及注释,在 Begin-End 中完成猫类和动物类的转换,以及彼此方法和属性的调用,具体要求如下:
- /**
- * 使用对象类型的转换,根据编程提示,完成猫类和动物类的转换,以及彼此方法和属性的调用
- */
- // 定义动物类
- class Animal{
- // 定义动物类的属性
- public String name = "动物";
- public static String staticName = "可爱的动物";
- // 定义动物类的行为方法
- public void eat() {
- System.out.println("动物吃饭");
- }
- public static void staticEat() {
- System.out.println("可爱的动物正在在吃饭");
- }
- }
- // 定义猫类,该类继承动物类
- public class Cat extends Animal{
- // 定义猫类的属性
- public String name = "猫";
- public String str = "可爱的小猫";
- public static String staticName = "我是喵星人";
- // 定义猫类的行为方法
- public void eat() {
- System.out.println("猫吃饭");
- }
- public static void staticEat() {
- System.out.println("喵星人在吃饭");
- }
- public void eatMethod() {
- System.out.println("猫喜欢吃鱼");
- }
-
- public static void main(String[] args) {
- // 请在下面的Begin-End之间按照注释中给出的提示编写正确的代码
- /********* Begin *********/
- // 向上转型,把猫类对象赋值给动物类
- Animal a1=new Cat();
- Cat a2=(Cat) a1;
- // 向下转型,将动物类引用转换为猫类对象
-
- // 输出Animal类的name变量
- System.out.println(a1.name);
- // 输出Animal类的staticName变量
- System.out.println(a1.staticName);
- // 输出Cat类的eat()方法
- a1.eat();
- // 输出Animal类的staticEat()方法
- a1.staticEat();
- // 调用Cat类的str变量
- System.out.println(a2.str);
- // 调用Cat类的eatMethod()方法
- a2.eatMethod();
- /********** End **********/
- }
- }
-
-
提示:这里对文章进行总结:
例如:以上就是今天要讲的内容,本文仅仅简单介绍了Java继承和多态之对象类型的转换。