1.多态性的体现: 方法的重载和重写 对象的多态性 2.对象的多态性: 向上转型:程序会自动完成 父类 父类对象 = 子类实例 向下转型:强制类型转换 子类 子类对象 = (子类)父类实例 1 package com.example; 2 class A{ 3 public void tell1() ...
分类:
其他好文 时间:
2017-01-17 21:22:05
阅读次数:
170
1. switch语句 Only convertible int values, strings or enum variables ,即switch语句的表达式的类型只能是可以转换成int型的(向上转型,不丢失精度的),字符串类的和枚举类的 2.if语句 使用if...else语句:优先 把 包含 ...
分类:
其他好文 时间:
2017-01-10 18:00:05
阅读次数:
141
上节我们介绍了继承和多态的基本概念,基本概念是比较简单的,子类继承父类,自动拥有父类的属性和行为,并可扩展属性和行为,同时,可重写父类的方法以修改行为。 但继承和多态概念还有一些相关的细节,本节就来探讨这些细节,具体包括: 构造方法 重名与静态绑定 重载和重写 父子类型转换 继承访问权限 (prot ...
分类:
其他好文 时间:
2017-01-06 09:33:44
阅读次数:
241
Java多态对象的类型转换这里所说的对象类型转换,是指存在继承关系的对象,不是任意类型的对象。当对不存在继承关系的对象进行强制类型转换时,java 运行时将抛出 java.lang.ClassCastException 异常。 在继承链中,我们将子类向父类转换称为“向上转型”,将父类向子类转换称为“ ...
分类:
编程语言 时间:
2016-12-28 17:58:39
阅读次数:
247
继承、接口:Java子类中如果含有父类中不包含的变量与方法,子类对象向上转型时就是丢失这些变量和方法。 ...
分类:
编程语言 时间:
2016-12-23 01:33:36
阅读次数:
162
在Java中强制类型转换分为基本数据类型和引用数据类型两种,这里我们讨论的后者,也就是引用数据类型的强制类型转换。 在Java中由于继承和向上转型,子类可以非常自然地转换成父类,但是父类转换成子类则需要强制转换。因为子类拥有比父类更多的属性、更强的功能,所以父类转换为子类需要强制。那么,是不是只要是 ...
分类:
编程语言 时间:
2016-12-19 21:37:53
阅读次数:
168
向上转型,就是将其他类型转对象转为Object类型,向下转型则相反。 例: 运行结果: true12.3Exception in thread "main" java.lang.ClassCastException: java.lang.Float cannot be cast to java.la ...
分类:
其他好文 时间:
2016-12-18 15:36:58
阅读次数:
212
向上转型: 父亲 f=new 孩子(); 向下转型: 父亲 f=new 孩子2(); 孩子2 c=(孩子2)f;//孩子 c=f;这样是错误的,将父类对象直接赋给子类是错误的,因为父类对象也不一定是子类的实例。 一个四边形不一定就是平行四边形也许是梯形,越是具体的对象具有的特性就越多,越抽象的对象具 ...
分类:
其他好文 时间:
2016-12-12 19:09:02
阅读次数:
178
封装、集成、多态和抽象是java的基本特征。 封装的第一步就是对类进行组装,即定义一个类,这时候要考虑这个类要有哪些属性、方法等。第二步就是信息的隐藏,这包括访问修饰符、get/set方法和某些特定方法的实现。当采用private修饰符的时候要提供get/set方法,有一下好处: 1、可以只提供ge ...
分类:
编程语言 时间:
2016-12-11 03:01:09
阅读次数:
151
我们都知道,方法的重写是导出类和基类的一种多态的表现,可以在实例化时将导出类向上转型为基类,但是这样的缺点是,向上转型只能实现基类中定义的方法,只不过在导出类中又将这些方法更加丰富了。 现实中,我们还需要在导出类中扩展基类中没有的方法,这就用到在实例化时向下转型才能实现导出类的扩展方法。 下面举例说 ...
分类:
其他好文 时间:
2016-12-08 20:44:40
阅读次数:
144