Discuss / Java / 道理我都懂

道理我都懂

Topic source

🌙

#1 Created at ... [Delete] [Delete and Lock User]

两个Class实例,为什么要判断一个向上转型是否成立呢?

instanceof 是为了防止 强制类型转换失败?

isAssignableFrom 是为什么呢?

🌙

#2 Created at ... [Delete] [Delete and Lock User]
  • **isAssignableFrom()**方法是判断是否为某个类的父类,**instanceof()**方法是判断是否某个类的子类。

  • isAssignableFrom()方法是从类继承的角度去判断,instanceof()方法是从实例继承的角度去判断。

  • 通过Class对象的isAssignableFrom()方法可以判断一个向上转型是否可以实现。

  • 为了避免向下转型出错,Java提供了instanceof操作符,可以先判断一个实例究竟是不是某种类型

🌙

#3 Created at ... [Delete] [Delete and Lock User]

A.isAssignableFrom(B)

A和B均为Class对象,判断B是否等于/继承/实现A,是返回true,否返回false


  • 1

Reply