instanceof及类型转换

instanceof

instanceof是Java中的二元运算符,

左边是对象,右边是类;

当对象是右边类或子类或间接子类所创建对象时,返回true;否则,返回false。

//Teacher和Student继承Person 
//Object>String
//Object>Person>Teacher
//Object>Person>Studnet
Object object = new Student();
        System.out.println(object instanceof Student);//true
        System.out.println(object instanceof Person);//true
        System.out.println(object instanceof Object);//true
        System.out.println(object instanceof Teacher);//false
        System.out.println(object instanceof String);//false
        System.out.println("=======================");
        Person person = new Student();
        System.out.println(person instanceof Student);//true
        System.out.println(person instanceof Person);//true
        System.out.println(person instanceof Object);//true
        System.out.println(person instanceof Teacher);//false
//        System.out.println(person instanceof String);//编译错误
        System.out.println("=======================");
        Student student = new Student();
        System.out.println(student instanceof Student);//true
        System.out.println(student instanceof Person);//true
        System.out.println(student instanceof Object);//true
//        System.out.println(student instanceof Teacher);//编译错误
//        System.out.println(student instanceof String);//编译错误

 

 

 

 

数据类型转换

1.基本数据类型转换:

byte,short,char<int <long<float<double

由低到高自动转换byte--->double 自动

由高到低强制转换double--->byte 强制

2.引用数据类型

子类<父类

student<person<object

由低到高,自动转换student---->object 自动

由高到低,强制转换object---->student 强制

子类转父类,自动动转换,但会丢失子类的方法。

posted @ 2020-04-23 23:25  DannyBoy~  阅读(1978)  评论(0编辑  收藏  举报