Software

Aritect

关于

_____________________

介绍

天赋就像树木,需要用学习修剪

JAVA对象转型1

    public static void main(String[] args) 
        {
            Cat dx = new Cat( "小黄" , "蓝色" );//调用Cat类
        }

    }

class Animal
    {
    public String name;//设置Animal的成员变量:name
    Animal(String set_name)//构造方法
        {
            this.name = set_name;//将输入的参数赋给成员变量name
        }
    }

class Cat extends Animal//Cat继承于Animal
    {
    public String eyesColor;//Cat自己的成员变量:eyesColor
        Cat(String N,String eye)//构造方法
            {
            super(N);//调用Animal的构造方法,将N参数传入
            this.eyesColor = eye;
            System.out.println(this.name);
            System.out.println(this.eyesColor);
            }
    }

    //最终打印出:
        小黄//name
        蓝色//eyesColor


    *1.    name是父类的成员变量,eyesColor是子类的成员变量
        如果此时new一只Animal对象"A"和Cat对象"B"
        使用instance of进行类判断
        B instanceof Animal//会显示true,Cat是Animal类的子类,所以Cat的对象B是Animal类之一
        A instanceof Cat//会显示false,A是父类,Animal的对象A并不是Cat类之一
 

 

 

 

若要访问B特有的成员变量和方法,则需要对A进行强制转换,转换成Cat类型

            Cat DX = (Cat) A;

posted @ 2018-08-19 16:32  Crystalline  阅读(136)  评论(0)    收藏  举报