java
来源:互联网 发布:苏州慧博网络是坑吗 编辑:程序博客网 时间:2024/06/05 06:15
通过值传递参数
调用一个方法时候需要提供参数,你必须按照参数列表指定的顺序提供。
例如,下面的方法连续n次打印一个消息:
TestVoidMethod.java 文件代码:
publicstaticvoidnPrintln(Stringmessage,intn){for(inti =0;i <n;i++){System.out.println(message);}}
示例
下面的例子演示按值传递的效果。
该程序创建一个方法,该方法用于交换两个变量。
TestPassByValue.java 文件代码:
publicclassTestPassByValue{publicstaticvoidmain(String[]args){intnum1 =1;intnum2 =2;System.out.println("交换前 num1 的值为:" +num1 +" ,num2 的值为:" + num2);// 调用swap方法swap(num1,num2);System.out.println("交换后 num1 的值为:" +num1 +" ,num2 的值为:" + num2);}/** 交换两个变量的方法*/publicstaticvoidswap(intn1,intn2){System.out.println("\t进入 swap 方法");System.out.println("\t\t交换前 n1 的值为:" +n1 +",n2 的值:" + n2);// 交换 n1 与 n2的值inttemp =n1;n1 =n2;n2 =temp;System.out.println("\t\t交换后 n1 的值为 " +n1 +",n2 的值:" + n2);}}
以上实例编译运行结果如下:
交换前 num1 的值为:1 ,num2 的值为:2进入 swap 方法交换前 n1 的值为:1,n2 的值:2交换后 n1 的值为 2,n2 的值:1交换后 num1 的值为:1 ,num2 的值为:2
传递两个参数调用swap方法。有趣的是,方法被调用后,实参的值并没有改变。
使用的max方法仅仅适用于int型数据
finalize() 方法
Java 允许定义这样的方法,它在对象被垃圾收集器析构(回收)之前调用,这个方法叫做 finalize( ),它用来清除回收对象。
例如,你可以使用 finalize() 来确保一个对象打开的文件被关闭了。
在 finalize() 方法里,你必须指定在对象销毁时候要执行的操作。
finalize() 一般格式是:
protectedvoidfinalize(){// 在这里终结代码}
关键字 protected 是一个限定符,它确保 finalize() 方法不会被该类以外的代码调用。
当然,Java 的内存回收可以由 JVM 来自动完成。如果你手动使用,则可以使用上面的方法。
0 0