Java疑难杂症

强制类型转换

2016-12-15  本文已影响47人  Mr_Alpha

Java有容器和对象之分1. 容器就是变量,它用来指向某个对象(地址)

1.1 容器其实是用来限定对象行为的,程序运行的时候只能调用容器里的方法(包含从超类继承过来的方法)

  1. 对象就是用构造器new出来的

关键

  1. 对象可以存储在本类型容器或者超类容器
  2. 虚拟机会维护每个对象的类型,就是该对象是用什么构造器new出来的,它就是那个构造器的类型
    2.1 可以通过getClass()方法获取它的类对象

强制转换

  1. 规则
    1.1 两个没有继承关系的容器和对象是不允许强制转换的,也就是没有兼容关系
    1.2 一个对象是不允许放到它的子类型容器里的,反过来是可行的
    1.3 强制转换就发生在把对象从一个容器切换到另一个容器的过程中
    1.4 当一个子类型对象放入超类容器,这个子类型对象是可以通过强制转换放入自身类型的容器
  2. 诀窍
    2.1 使用instanceof方法确保代码的安全性
上一篇 下一篇

猜你喜欢

热点阅读