码迷,mamicode.com
首页 > 编程语言 > 详细

胡博君轻松解读Java之instanceof关键字的用法

时间:2014-12-29 23:06:09      阅读:238      评论:0      收藏:0      [点我收藏+]

标签:java   instanceof的语法是怎么样的   instanceof是什么   instanceof怎么用呢   胡博君   

语法:

对象  instanceof  类     判断这个对象是否属于这个类并且返回boolean类型的结果


instanceof的用途:

当一个父类拥有多个子类的时候,且有需要区分这些子类的时候,这个instanceof就能派上用场了。


举例说明:

package com.xiaohu.text_instanceof;


public class Text {
    public static void main(String[] args) {
  Man p =new Man();
  p.name="胡博君";
  eat(p);
  
  Woman p1 =new Woman();
  p1.name="小红";
  eat(p1);
   }
    public static void eat(Person m){
    m.eat();

//这里使用了instanceof关键字
    if(m instanceof Woman){
    Woman woman =(Woman)m;
    woman.say();
    }
    }
    
}
abstract class Person{
String name;


public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public abstract void eat();
}
class Man extends Person{


public void eat() {
System.out.println(name+"吃饭了");
}

}
class Woman extends Person{


public void eat() {
System.out.println(name+"吃饭了");
}
public void say(){
System.out.println("说话了");
}

温馨提示:instanceof一般用于继承关系的类,且一个父类拥有多个子类,且常用于多态中。多态转型时候可能会因为父类拥有多个子类,且父类又需要转换为某个明确的子类的时候,就需要用到instanceof来做判断了,如果没有这个判断,就会出现类型转换异常,以上述为例,如果没有这个判断,就会导致传进来的是Man的实例的时候,而里面却转换成了Woman,子类与子类之间是不能转换的。



欢迎大家收看我的在线Java全套免费教学超清视频:

http://v.youku.com/v_show/id_XODQ1NjU0NDc2.html   这是其中的一个视频连接,大家可以拖动到优酷视频下方,订阅我的账号,因为以后我会有更多视频免费提供

百度搜索:输入Fcs_D调的码农 ,或者输入"胡博君"就能看到我的很多视频

或者加我的微信号:fcsboy     我可以及时通过微信通知你们

QQ学习群:237053693


胡博君轻松解读Java之instanceof关键字的用法

标签:java   instanceof的语法是怎么样的   instanceof是什么   instanceof怎么用呢   胡博君   

原文地址:http://blog.csdn.net/laokdidiao/article/details/42246003

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!