A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© askyle 中级黑马   /  2013-6-20 11:05  /  1620 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 Super_Class 于 2013-6-20 23:54 编辑

if(!(obj instanceof Student))
throw new RuntimeException("不是学生对象");/如果obj不等于或者不是Student类型就抛出异常。 是不是这个意思?

评分

参与人数 1技术分 +1 收起 理由
Super_Class + 1

查看全部评分

3 个回复

倒序浏览
基本上是这个意思,obj是应该是楼主定义的父类引用吧,那这个判断就是说如果obj这个引用指向的对象不属于Student类,判断条件为true,就会抛出RuntimeException异常。
回复 使用道具 举报
instanceof 运算符是用来在运行时指出对象是否是特定类的一个实例。instanceof通过返回一个布尔值来指出,这个对象是否是这个特定类或者是它的子类的一个实例。     用法:result = object instanceof class参数:result必选项。任意变量。object必选项。任意对象表达式。class必选项。任意已定义的对象类。说明:如果 object 是 class 的一个实例,则 instanceof 运算符返回 true。如果 object 不是指定类的一个实例,或者 object 是 null,则返回 false。
回复 使用道具 举报
一般来说,在向下转型之前要用instanceof来判断一下!!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马