向上转型
2016-06-03 08:46
232 查看
/* *本代码无任何实际意义,只是自学中记录学习的东西而已。如有不对请批评指正为谢。 */ class Animal { String name; int age; String size; Animal(){ System.out.println("无参构造"); } Animal(String name,int age){ this(); this.name = name; this.age = age; System.out.println("两个参数构造"); } Animal(String size,int age,String name){ this(name,age); this.size = size; System.out.println("三个参数构造"); } void activity(){ System.out.println("run"); } void getInfo(){ System.out.println("Animal的名字:" + this.name + "年龄:" + this.age + "大小:" + this.size); } } class Dog extends Animal{ String sexy; Dog(){ System.out.println("Dog无参构造"); } Dog(String name,int age){ super(name,age); System.out.println("Dog两个参数构造"); } Dog(String name,int age,String size){ super(size,age,name); System.out.println("Dog三个参数构造"); } Dog(String name,int age,String size,String sexy){ super(size,age,name); this.sexy = sexy; System.out.println("Dog四个参数构造"); } void activity(){ super.activity(); System.out.println("woof"); } void getInfo(){ System.out.println("Animal的名字:" + this.name + "年龄:" + this.age + "大小:" + this.size + "性别:" + this.sexy); } void eat(){ System.out.println("eat"); } } public class TestDemo { public static void main (String args[]){ Animal d = new Dog("anmi",12,"small","male");//父类引用可以用子类的构造方法, System.out.println("Animal的名字:" + d.name); System.out.println("年龄:" + d.age); System.out.println("大小:" + d.size); // System.out.println("性别:" + d.sexy);//错误: 找不到符号,父类引用不能调用子类变量。 d.getInfo();//虽然System.out.println("性别:" + d.sexy);这行代码不能显示sexy这个属性,但是调用复写的getInfo方法却可以。 d.activity();//这里调用的父类引用调用方法时调用的却是子类复写后的方法。 // d.sexy = "female"; //错误: 找不到符号,父类引用不能调用子类变量。 //d.eat();//错误: 找不到符号,父类引用不能调用子类方法。 } } /*output 无参构造 两个参数构造 三个参数构造 Dog四个参数构造 Animal的名字:anmi 年龄:12 大小:small Animal的名字:anmi年龄:12大小:small性别:male run woof */ */
相关文章推荐
- Hibernate03(无连接表的单项1-N关联)
- 单分类
- CentOS 6.5下搭建vsftp服务器
- 【Android】27、常见控件的使用方法——TextView
- T-SQL 控制流语句
- 指令scope与controller中$scope交互的几种方式
- Powershell学习之道-文件夹共享及磁盘映射
- 变量和基本数据类型
- JQuery图表插件Flot之效果源码
- PHP学习笔记
- html meta 直接跳转页面
- stm32之EXTI中断
- pod repo
- 页面置换算法整理
- The Begining
- android下的callback机制
- centos yum安装rrdtool
- 事务ACID特性
- Elasticsearch读书笔记(http://es.xiaoleilu.com/ )
- “error LNK2019: 无法解析的外部符号”之分析