JAVA的类和方法(教程) (3)
[ 来源:互网络 | 更新日期:2007-09-18 07:15:26 | 浏览次数:11967]
必须要执行的那些动作。finalize()方法的通常形式如下:
protected void finalize()
{
// finalization code here
}
理解finalize()只在垃圾回收前被调用是非常重要的。例如,当对象超出作用域时,finalize()
就不会被调用。这意味着不会知道finalize()将会在什么时候执行。因此,程序中应当提供
由其它对象使用的释放系统资源的方法。对于一般的程序操作不必依赖finalize()。
方法重载
在JAVA程序中,只要所声明的参数不同,就可以在同一个类中定义两个或更多具有相同名
字的方法。当这样做时这些方法就称为被重载,这个过程称为方法重载。当一个重载的方
法被调用时,JAVA使用参数的类型和个数取决于实际调用哪一个被重载的方法。因此,重
载的方法在参数类型和数量上肯定不会一样。重载的方法可以有不同的返回类型,仅单独
使用返回类型不能辨别是哪个方法。当JAVA程序遇到调用重载方法时,它仅仅执行与调用
参数相匹配的那个方法。
除一般的方法重载外,也可以重载构造函数。下面举一个方法重载的例子:
// Demonstrate method overload
class OverloadDemo {
void test() {
System.out.println("No parameters");
}
void test(int a) {
System.out.println("a:" + a);
}
void test(int a,int b) {
System.out.println("a and b:" + a + " " + b);
}
void test(double a) {
System.out.println("double a: " + a);
}
}
下面类说明了重载的test()方法。
class Overload {
public static void main(String args[]) {
OverloadDemo ob = new OverloadDemo();
double result;
// call all versions of test()
ob.test();
ob.test(10);
ob.test(10,20);
result = ob.test(123.4);
}
}
参数传递
通常一种计算机语言有两种向子程序传递参数的方法。第一种方法叫做值调用(call-by-value)。
这种方法将一个参数的值复制到子程序的形式参数里。因此,子程序参数的变化并不会影响到
用于调用的参数。第二种参数传递的方法叫做引用调用(call-by-reference)。在这种方法中,
把一个参数(不是参数的值)的引用传递给形式参数。在子程序里,这个引用用于对调用中指
定的实际参数进行访问。这就意味着形式参数的变化会影响到用于调用子程序的参数。JAVA
根据传递的内容使用这两种方法。
在JAVA中,当向方法传递一个简单类型时,传递的是一个值。当传递的是一个对象时,则按
引用传递。
递归
JAVA支持递归。
下面的例子是如何使用递归方法计算一个


您的位置:
