1.一个基类的引用类型可以指向其子类的对象

2.一个基类的引用指向子类的对象时不可以访问其子类对象新增加的成员(属性和方法) 比如,一只狗继承动物类,如果将狗当成动物传入,那么狗局不能访问自己独有的成员,只能当成动物来用

3.可以引用   变量  instanceof  类名   来判断该引用变量所指向的对象是否属于该类或该类的子类

4.子类对象可以当做基类对象来使用,称为向上转型(upcasting),反之,称为向下转型(downcasting0

class Animal {public String name;Animal(String name) {this.name = name;}
}
class Cat extends Animal {public String eyesColor;Cat(String n,String c) {super(n);eyesColor = c;}
}
class Dog extends Animal {public String furColor;Dog(String n,String c) {super(n);furColor = c;}
}
public class TestAnimal {public static void main(String[] args) {Animal a = new Animal("name");Cat c = new Cat("catname", "blue");Dog d = new Dog("dogname", "black");System.out.println(a instanceof Animal);//trueSystem.out.println(c instanceof Animal);//trueSystem.out.println(d instanceof Animal);//trueSystem.out.println(a instanceof Cat);//falsea = new Dog("bigyellow", "yellow");System.out.println(a.name);//System.out.println(a.furColor);System.out.println(a instanceof Animal);System.out.println(a instanceof Dog);Dog d1 = (Dog)a;System.out.println(d1.furColor);}
}

Java之对象转型(casting)相关推荐

  1. java基础—对象转型

    一.对象转型介绍 对象转型分为两种:一种叫向上转型(父类对象的引用或者叫基类对象的引用指向子类对象,这就是向上转型),另一种叫向下转型.转型的意思是:如把float类型转成int类型,把double类 ...

  2. 对象转型(casting); 多态; static(静态);单例模式

    对象转型: public class Animals { //父类private String lei;private double weight; //需要get,set一下,外界才可以调用publ ...

  3. [Java]向上/下转型Casting

    一.向上转型. 通俗地讲即是将子类对象转为父类对象.此处父类对象可以是接口. 1,向上转型中的方法调用. 看下面代码: 注意这里的向上转型: Animal b=new Bird(); //向上转型 b ...

  4. java基础学习之对象转型

    对象转型(casting): 1)一个基类的引用类型变量可以指向其子类的对象 2)一个基类的引用不可以访问其子类对象新增加的成员(属性和方法) 3)可以使用引用变量instanceof类名,来判断该引 ...

  5. Java-对象转型(casting)

    对象转型(casting) 一个基类的引用类型变量可以指向其子类的对象 一个基类的引用不可以访问其子类对象新增加的方法(属性,方法) 可以使用 引用 变量instanceof类名 来判断该引用型变量所 ...

  6. java的知识点13——多态、对象的转型(casting)、final关键字、抽象方法和抽象类、接口的作用、如何定义和使用接口?、接口的多继承、面向接口编程

    多态 多态指的是同一个方法调用,由于对象不同可能会有不同的行为.现实生活中,同一个方法,具体实现会完全不同. 多态的要点: 1. 多态是方法的多态,不是属性的多态(多态与属性无关). 2. 多态的存在 ...

  7. java 父类转子类_Java多态,对象转型,和简单工厂模式。希望对您有帮助!

    各位读者老爷们大家好鸭~图图又来了,今天我们要说一下"多态". 怎么理解这两个字呢?可以理解为同一个引用对象的不同表现形态,即将父类的引用指向子类的对象.这是比较官方的书面解释,大 ...

  8. Java自学笔记(13):【面向对象】方法覆盖,final关键字,对象转型

    方法同名时:方法重载,方法覆盖 同一类内的方法同名:方法重载 子类与父类方法同名:方法覆盖 //在包person下 //Person.java package person;public class ...

  9. 【零基础学Java】—对象的向上和向下转型(二十七)

    [零基础学Java]-对象的向上转型(二十七) 对象的向上转型,其实就是多态的写法 格式:父类名称 对象名=new 子类名称(): 含义:右侧创建一个子类对象,把它当做父类来看待使用 注意事项:向上转 ...

最新文章

  1. 马斯克的火箭又炸了,这次可能怪美国宇航管理局:因督导员迟到,星舰原型SN11被迫在浓雾中发射...
  2. python之turtle库(画图)
  3. MYSQL,Oracle,SQL数据库在JSP中的驱动
  4. 全国计算机考试光盘,全国计算机一级模拟考试题(光盘).doc
  5. C语言线程创建与锁机制
  6. 读书笔记《Java开发技术-在架构中体验设计模式和架构之美》
  7. 已知: 每个飞机只有一个油箱, 飞机之间可以相互加油(注意是相互,没有加油机) 一箱油可供一架飞机绕地球飞半圈,问题:为使至少一架飞机绕地球一圈回到起飞时的飞机...
  8. cisco交换机命令大全(10)
  9. java从入门到精通mac,Windows 平台Nginx + tomcat +memcached 集群
  10. 【MDVRP】基于matlab水滴算法求解多仓库车辆路径规划问题【含Matlab源码 1310期】
  11. 第三届蓝桥杯省赛---马虎的算式
  12. Tomcat7安装(jdk 1.7环境)
  13. 电影售票系统项目介绍
  14. 720P、1080P、4K是什么意思?
  15. Eclipse所有快捷键
  16. 安卓手机版微信聊天加密软件 悬浮窗版本
  17. pandas并发处理数据神器Pandarallel的实战代码
  18. php7安装fileinfo扩展
  19. ubuntu下重启tomcat
  20. python ray定时_使用 Ray 用 15 行 Python 代码实现一个参数服务器

热门文章

  1. Nginx stream 配置代理(Nginx TCP/UDP 负载均衡)
  2. Vueb报错[WDS] Errors while compiling. Reload prevented
  3. 直播软件开发公司来告诉你什么是互动直播
  4. 笔记本3.0 typec接口插上U盘没有反应
  5. 一加和小米哪个好 一加用技术领先树立起品牌典范
  6. java高校心理测评管理系统计算机毕业设计MyBatis+系统+LW文档+源码+调试部署
  7. 特性(Attribute)
  8. 港星变身“单亲美妈” 陈松伶:中年女演员的舞台不应设限
  9. 56.木秀于林,风必摧之
  10. APP STORE又崩了?可以通过DNS解决!