ARTICLE DETAIL

资讯详情

深耕网站建设、视觉设计与SEO优化的一线实战洞察。

Java面向对象——instanceof和类型转换

Java面向对象——instanceof和类型转换

instanceof

用于判断一个对象是否属于相应类型

public class Application {static void main(String[] args) {Student s1 = new Student();Person s2 = new Student();Object s3 = new Student();System.out.println(s3 instanceof Student);System.out.println(s3 instanceof Person);System.out.println(s3 instanceof Object);System.out.println(s3 instanceof Teacher);System.out.println(s3 instanceof String);//编译可通过,类型为Object,引用对象为StudentSystem.out.println("============================");System.out.println(s1 instanceof Student);System.out.println(s1 instanceof Person);System.out.println(s1 instanceof Object);//System.out.println(s1 instanceof Teacher);//System.out.println(s1 instanceof String);//二者同级别,编译报错 Object>Person>Student  Object>String}
}

高转低需要使用类型转换
子类转父类可能丢失一些方法

返回列表