摘要: JAVA虚拟机调用一个类方法时,它会基于对象引用的类型(通常在编译时可知)来选择所调用的方法。相反,当虚拟机调用一个实例方法时,它会基于对象实际的类型(只能在运行时得知)来选择所调用的方法,这就是动态绑定,是多态的一种。动态绑定为解决实际的业务问题提供了很大的灵活性,是一种非常优美的机制。1 JAVA对象模型 JAVA虚拟机规范并没有规定JAVA对象在堆里是如何表示的。对象的内部表示也影响着整个堆以及垃圾收集器的设计,它由虚拟机的实现者决定。 JAVA对象中包含的基本数据由它所属的类及其所有超类声明的实例变量组成。只要有一个对象引用,虚拟机就必须能够快速地定位对象实例的数据。另外,它也必须能通 阅读全文
posted @ 2011-01-25 12:25 程承JAVA 阅读(244) 评论(0) 推荐(0) 编辑
摘要: 网站开发提供,转载时请注明出处!我们之前探讨的基本类型可以说是Java的变量,还没有讨论的引用类型或者是类的实例、对象也是Java中的变量。 所谓变量的作用范围是指可以存取变量的代码模块。变量的作用方位同时也决定了变量何时产生的,何时消灭的。在声明变量的同时,实际上也定义了它的范围。变量的作用范围可以分成如下四类: 1、成员变量。最通俗的理解方式就是声明一个类之后声明的变量就是成员变量,它直属于类。 2、局部变量。与成员变量不同,它隶属于方法。 3、方法变量。比如调用一个方法需要传递一些参数进行运算,那么这个参数即使方法参数。 4、异常处理方法变量。 一般地,局部变量的作用范围从它被声明的点到 阅读全文
posted @ 2011-01-25 11:55 程承JAVA 阅读(236) 评论(0) 推荐(0) 编辑