黑马程序员技术交流社区

标题: 对象的类型转换 [打印本页]

作者: 张淑亮    时间: 2015-9-17 23:02
标题: 对象的类型转换
interface Animal{  //接口
        void shout();   //抽象方法 动物叫
}
class Cat implements Animal{   //类Cat实现接口Animal
        public void shout(){
                System.out.println("喵喵");   //实现了方法shout
        }
        public void sleep(){   //定义了方法 sleep
                System.out.println("猫睡觉");
        }
}

class Test1{
        public static void main(String[] args){
                Cat c = new Cat(); //创建Cat类对象
                animalShout(c);  //调用animalShout方法,将c作为参数传入
        }
        public static void animalShout(Animal animal){  //animalShout方法的参数是Animal型的
                Cat c = (Cat)animal;  //类型强转
                c.shout();
                c.sleep();  //Animal中没有方法sleep,所以要想调用次方法,传入的参数必须经过强制转型为Cat类型的
        }
}

运行结果:
C:\Users\Administrator.PC-20150819TLWB\Desktop
作者: 张淑亮    时间: 2015-9-17 23:03
运行结果:喵喵




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2