nstanceof关键字来判断某个对象是否属于某种数据类型。报错  代码如下

package cn.lijun.demo3;

import cn.lijun.demo.Person;
import cn.lijun.demo.Student;
import cn.lijun.demo.Teacer;

public class Test {
public static void main(String[] args) {
Fu f = new Zi();// 编译时期 :参考引用类型变量所属的类 如果类中没有调用的方法 编译以失败
//f.show(); //运行时期:引用类型变量所指的对象所属的类 并运行所属类中的方法
// 成员方法: 编译看左边 运行看右边
//成员变量 : 编译 运行全看左边
//int a = f.num;
Zi z =new Zi();
Person p = new Person();
Student s1=new Student();
Teacer t = new Teacer();
// System.out.println(a);
Boolean b =Teacer instanceof p;
System.out.println(b);
}
}

课堂上经过赵帅同学测试 将  Boolean b =Teacer instanceof p;  调整为前父后子后  可以正常使用

总结instanceof的使用方式为:测试的时候前父后子

正确代码如下

package cn.lijun.demo3;

import cn.lijun.demo.Person;
import cn.lijun.demo.Student;
import cn.lijun.demo.Teacer;

public class Test {
public static void main(String[] args) {
Fu f = new Zi();// 编译时期 :参考引用类型变量所属的类 如果类中没有调用的方法 编译以失败
//f.show(); //运行时期:引用类型变量所指的对象所属的类 并运行所属类中的方法
// 成员方法: 编译看左边 运行看右边
//成员变量 : 编译 运行全看左边
//int a = f.num;
Zi z =new Zi();
Person p = new Person();
Student s1=new Student();
Teacer t = new Teacer();
// System.out.println(a);
Boolean b = p instanceof Teacer;//前父后子
System.out.println(b);
}
}

关于instanface的问题的更多相关文章

  1. 覆盖equals方法时请遵守通用约定

    覆盖equals方法时请遵守通用约定   覆盖equals方法看起来很简单,但是有许多覆盖方式会导致错误,并且后果很严重.最容易避免这种类问题的方法就是不覆盖equals方法,在这种情况下,类的每个实 ...

随机推荐

  1. Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第十七章:拾取

    原文:Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第十七章:拾取 代码工程地址: https://github.com/ ...

  2. jQuery show hide方法 二级菜单

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  3. 2019-1-9-WPF-最小的代码使用-DynamicRenderer-书写

    title author date CreateTime categories WPF 最小的代码使用 DynamicRenderer 书写 lindexi 2019-1-9 14:7:26 +080 ...

  4. Java练习 SDUT-1194_余弦

    C语言实验--余弦 Time Limit: 1000 ms Memory Limit: 65536 KiB Problem Description 输入n的值,计算cos(x). Input 输入数据 ...

  5. hdu 4128 Running relay (线性规划转半平面交)

    Problem - 4128 对偶线性规划转半平面交,这题的正解O(nlogn)解法,目前网上没有找到这样的正解. 原来的不等式组, sigma{-si*xi}>=-W+d*sigma{si} ...

  6. MyEclipse2016项目内复制一个项目,如何更改项目的访问路径

    在MyEclipse2010版本如果复制了一个项目,需要改项目的访问路径的话,可以选中项目右键,点开Properties,在顶部搜索web,就会出现如下内容,这是只需要在里面更改路径就可以了. 而在2 ...

  7. Where是深复制

    从一个List中通过Where过滤出来的子List或Fist出来的单独元素,与原List是深复制关系.也就是说修改子list,或单独元素,并不会影响原List中的对象. 如:Geom g = Geom ...

  8. Python深入:stevedore简介

    stevedore是用来实现动态加载代码的开源模块.它是在OpenStack中用来加载插件的公共模块.可以独立于OpenStack而安装使用:https://pypi.python.org/pypi/ ...

  9. Python深入:Distutils安装包

    一:简介 尽管Python标准库已经支持很多的功能,但是有时还是会需要以第三方模块的形式添加新的功能到Python中. 在最简单的场景中,是你要安装的模块,已经有了针对你的平台的安装版本,因此只需要像 ...

  10. 关于react-router 路径改变页面没有刷新

    routert.js 中: <Router> <Switch> <Route exact path="/" component={Login}> ...