Class.isAssignableFrom与instanceof的区别
程序员文章站
2022-05-27 22:31:01
isAssignableFrom 假设有两个类Class1和Class2。 表示: 1. 类Class1和Class2是否相同。 2. Class1是否是Class2的父类或接口 调用者和参数都是java.lang.Class类型。 instanceof 用来判断一个对象是否是一个类及其子类或接口及 ......
isassignablefrom
假设有两个类class1和class2。class1.isassignablefrom(class2)
表示:
- 类class1和class2是否相同。
- class1是否是class2的父类或接口
调用者和参数都是java.lang.class类型。
instanceof
用来判断一个对象是否是一个类及其子类或接口及其子接口的的实例。
格式:object instanceof typename
第一个参数是对象实例名,第二个参数是具体的类名或接口名
举例
public class testcase { public static void main(string[] args) { testcase test = new testcase(); test.testisassignedfrom1(); test.testisassignedfrom2(); test.testisassignedfrom3(); test.testinstanceof1(); test.testinstanceof2(); } public void testisassignedfrom1() { system.out.println(string.class.isassignablefrom(object.class)); } public void testisassignedfrom2() { system.out.println(object.class.isassignablefrom(object.class)); } public void testisassignedfrom3() { system.out.println(object.class.isassignablefrom(string.class)); } public void testinstanceof1() { string ss = ""; system.out.println(ss instanceof object); } public void testinstanceof2() { object o = new object(); system.out.println(o instanceof object); } }
打印结果:
false true true true true
参考连接:
推荐阅读
-
php中类继承与接口继承的区别是什么
-
jquery选择器中的空格与大于号>、加号+与波浪号~的区别
-
静态与实例变量的区别——(面试题)
-
探索 Reflect.apply 与 Function.prototype.apply 的区别
-
IE6与IE7中,innerHTML获取param的区别_javascript技巧
-
批处理中Copy与Xcopy命令的区别小结
-
php 转换字符串编码 iconv与mb_convert_encoding的区别说明_PHP
-
php中const与define的使用区别 详解_PHP教程
-
如何检查您的Win11版本?Win11各版本区别与查看Win11版本方法
-
EXEC的使用与sp_executesql命令的区别