java基础:向上转型

原创 2016年08月29日 17:02:46
最简单的例子
public class Sample  {
	
	public static void main(String[] args) {
		Father father = new Son();
		father.a();
	}	
}

class Father {

	public void a() {
		System.out.println("father");
	}
}

class Son extends Father {
	
	public void a() {
		System.out.println("son");
	}
}
/**
output:son
*/
不同于C的方法调用(前期绑定,即程序执行前绑定),java中除了static和final(private方法默认为final)方法是前期绑定,其他所有方法都是后期绑定(自动发生),即在运行时根据对象的类型进行绑定,也就是编译器一直不知道对象的类型。上面例子中即使最终调用的是Son里的a方法,但是Father假如没这个方法的话,编译将无法通过。
版权声明:本文为博主原创文章,未经博主允许不得转载。 举报

相关文章推荐

java向上转型

向上转型:将子类对象的引用转换为父类对象的引用,这就是向上转型。 ”为新的类提供方法“这并不是继承中最重要的方面,其最重要的是用来表现新类和基类之间的关系。这种关系是”新类是现有类的一种类型“ 也就是...

java炒冷饭系列10 内部类 使用.this与.new和向上转型

使用.this与.new如果你需要生成对外部类对象的引用,可以使用外部类的名字后紧跟加点和this(OutClass.this)。这样产生的引用自动地具有正确的类型,这一点在编译期就被知晓并受到检查,...

我是如何成为一名python大咖的?

人生苦短,都说必须python,那么我分享下我是如何从小白成为Python资深开发者的吧。2014年我大学刚毕业..

Java运行时绑定探讨之向上转型

运行时绑定也叫动态绑定,它是一种调用对象方法的机制。Java调用对象方法时,一般采用运行时绑定机制。1.Java的方法调用过程编译器查看对象的声明类型和方法名(对象变量的声明类型)。通过声明类型找到方...

【java】深入向上转型(动态绑定)

运行时绑定也叫动态绑定,它是一种调用对象方法的机制。Java调用对象方法时,一般采用运行时绑定机制。   1.Java的方法调用过程   编译器查看对象的声明类型和方法名(对象变量的声明类型)。通...

java向上转型

问题的由来: 首先是方法的参数是父类对象,传入子类对象是否可行 然后引出Parent p = new Children(); 这句代码不是很理解,google的过程中引出向上转型 要理解向上转...

java接口用法:向上转型和回调函数

一、向上转型 下面一句话出自Thinking in Java。 使用接口的核心原因:为了能够向上转型为多个基类型。即利用接口的多实现,可向上转型为多个接口基类型。 j      ava接口或抽象类都...

java接口用法:向上转型和接口回调

1. 向上转型 使用接口的核心原因:为了能够向上转型为多个基类型。即利用接口的多实现,可向上转型为多个接口基类型。 java接口或抽象类都可以使用向上转型,它们用的都是java运行时多态技术,或者...

(多态)Java向上转型之后调用子类的同名变量/方法的问题

class Father{ public void f(){ System.out.println("A"); } } class Son extends Father...

关于java的接口回调和向上转型的理解

晚上的时候正在思考接口和对象转型若干问题,上网查了下资料,感觉这个解释的非常好,所以就转了过来,以备以后查找,也发出来给大家学习学习. 接口回调是指:可以把使用实现了某一接口的类创建的对象的引用...
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)