java 多态 向上造型】的更多相关文章

最近在读java 编程思想,在读多态一章时,遇到了一个问题,在此记录一下. 1 package main.demo; 2 3 class Super{ 4 public int filed =0; 5 6 public int getFiled() { 7 return filed; 8 } 9 } 10 11 class Sub extends Super{ 12 public int filed = 1; 13 14 @Override 15 public int getFiled() {…
向上转型 将子类对象当作父类对象     子类对象------>父类对象 先实例化子类 父类 父类对象 = 子类实例 package test2; class Father{ public void fun1(){ System.out.println("A---------fun 1"); } public void fun2(){ this.fun1();; } } class Sun extends Father{ public void fun1(){ System.ou…
向上转型:符合“is a”,是安全的,子类向上到父类,多余的属性和方法会丢弃 向下转型:不安全的,用instanceof提前判断一下,以免抛出异常 instanceof用法: result = object instanceof class result:布尔类型 object:必选项,任意对象表达式 class:必选项,任意已定义的对象类 说明: 如果object是class或者其子类的一个实例,则instanceof运算符返回true,如果不是或者object是null,则返回false p…
package com.study.oop.day01; /**  * 如果某个方法是静态 的,它的行为就不具有多态性  * @author LuHongGang  * @date 2017年6月5日  * @time 下午4:19:21  * @since 1.0  * 构造函数并不具有多态性,它们实际上是static方法,  * 只不过该static声明是隐式的.因此,构造函数不能够被override.  */ public class staticDemo { public static…
子类的对象可以向上造型为父类的类型.即父类引用子类对象,这种方式被称为向上造型. 在日常生活中,我们都扮演着不一样的角色.我们有可能是老师,有可能是学生,有可能是……, 但是我们都有共同的属性,例如:名字.性别.年龄……,但是在该基础上,不同身份的人也有着属于自己的不同的特点.我们通常描述他人的时候会说,这个人是老师,这个认识学生,这个人是个程序员…….实际上“这个人是……”这种说法就是向上造型. 直接上代码: /** * Person类,父类,用于描述人的共有的属性 * */ class Pe…
Java多态的向上转型和向下转型 向上转型:(子类转为父类,自动转型) 格式 :父类类型 变量名 = new 子类类型(); 注:子类赋值给父类,那这时这个父类就能调用子类的方法 向下转型:(父类转为子类,强制转型) 格式: 子类类型 变量名 = (子类类型) 父类类型的变量; 注:这个只能转换上边那种是从子类转为父类的“形式父类”:    而直接创建的父类对象,是无法向下转型的:也就是说调用的还是子类的方法而并不是父类的方法. 例子如下: 父类: package com.duotai2.dem…
目录 Java多态之向上转型 多态的优点 向上转型 概念 向上转型好在哪 Java多态之向上转型 多态性是面向对象的第三大特征. 多态的优点 改善代码的组织结构和可读性. 能够创建可扩展的程序.(随时可以加入新功能) 消除类型之间的耦合关系. 说实话,作为小白的我,并不太能够理解上面三个优点.随着深入学习,理解应该会越来越深吧,共勉. 向上转型 概念 Java允许把子类对象赋值给父类的引用变量,不用做任何强制转换,系统自动完成.向上转型来自于自下而上的继承关系,子类继承父类,子类是一种特殊的父类…
多态(方法的多态.对象的多态) 方法的多态 重写的多态(重要):子类继承父类,因此子类拥有父类属性和方法,如果子类重写父类方法,那么父类调用该方法的时候就会检查子类是否重写该方法,子类重写了就调用子类重写的方法,没有就调用父类自己的方法. 重载的多态:方法里的形参列表不同,在调用时穿惨给符合的方法,不同的是实参个数调用不同的方法 对象的多态(多态的核心) 一个对象的编译类型和运行类型可以不一致,也可以一直 编译类型在定义对象时,就确定了不能改变 运行类可以改变 例如: Animal animal…
一.基础概念 多态: 重点是对象的多态性.某一事物的多种体现形态. 多态的作用: 1.提高了代码的扩展性,后期出现的功能,可以被之前的程序所执行. 2.不能使用子类特有的功能.只能使用覆盖父类的功能. 多态的前提: 1.必须要有继承关系或者实现关系. 2.通常对方法进行重写.覆盖. 3.父类或者接口要引用指向子类对象. 多态向上转型: 1.提高程序的扩展性,隐藏了具体子类型 2.只能使用父类中的功能,不能使用子类特有的功能.功能被限定了. 多态向下转型: 1.可以使用子类型的特有功能. 2.必须…
Java 多态 父类和子类方法的访问控制权限 @author ixenos 父类和子类方法的访问控制权限 继承是为了扩展类的功能,而这种扩展显然就是对一个原始类的扩展,目的还是向上转型来调用,所以这就是一个对象多态的问题. 既然多态,那么访问控制权限就要让父类也能访问. 也就是说,子类重写方法时不能使该方法拥有比父类更严格的访问控制权限. 否则违背了多态,导致向上类型转换后,使用父类变量无法调用该子类私有方法.…