码迷,mamicode.com
首页 > 编程语言 > 详细

java4

时间:2015-09-11 17:23:45      阅读:140      评论:0      收藏:0      [点我收藏+]

标签:

参数传递

基本数据类型是复制值,引用数据类型是复制引用。

因此传递引用作为参数后可以通过引用的方法改变其字段,但改变形参(引用)本身,不会改变实参(引用)本身。

......

int [] b = new int[2];

modify(b);//b still --->int[2]

}

void modify(int[] b){

  b[0]++;//change the first element of int[2]

  b=new int[5];// do not change the b outside

}

 

多态

一个程序中相同名字表示不同含义

编译时多态:重载 (同名方法)

运行时多态:覆盖,动态绑定(dynamic binding,也叫虚方法调用virtual method invoking)

upcasting

派生类型当基本类型处理,Person p = new Stu();

void fun(Person p){...}            fun(new Person());  fun(new Stu());

虚方法调用,根据方法的实际传入的实例的类型来决定选用哪个方法

所有非final方法都自动动态绑定

if (a instanceof className)  //判断a是不是classname类型(或它的子类类型)

 

普通方法是虚方法   invokevirtual

static方法不是虚方法,属于类,与实例类型无关   invokestatic

private方法不是虚方法,子类看不见它,无法overwrite它   invokespecial

final方法子类无法覆盖,不存在虚化

java4

标签:

原文地址:http://www.cnblogs.com/jack-xu/p/4801431.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!