从零开始学JAVA DAY7

java语言的三个特征

封装,继承,以及多态

多态的概念:一个对象能被多个类(必须有继承关系)所定义

Cat cat  = new Animal

也能

Cat cat = new Cat

Aniamal 是 Cat 的父类 class Cat extends Animal

这里就有个区分

对于非静态量,编译看左边这个类是否有这个功能,实现输出最终看右边,父类被子类覆盖了

对于静态(static),本身就开辟了内存空间,那么Animal cat = new cat 访问的就是创建的对象,创建的对象是Animal类型的,那么调用的当然是Animal类型的

cat在animal 里面 我们也可以把animal 定义成 cat 那么现在

Animal cat = new Cat

现在的cat是Animal 类型的,是父类,父类是无法调用子类的

所以把cat强制转换成Cat之后我们就能调用了

cat = (Cat)cat

 

instanceof 关键字:

用来判断是否是该类

void check(Animal x)

{

    if(x instanceof Cat){

    }

   else if(x instanceof Dog){

    }

}

posted @ 2015-08-26 10:12  Painting、时光  阅读(103)  评论(0编辑  收藏  举报