易截截图软件、单文件、免安装、纯绿色、仅160KB

Java传值和传引用: 张三和李四的故事


下面开讲故事: 
从前有个房间,房间里有份文档,房间还有一把钥匙。 这把钥匙在张三手里。 
这时李四来向张三要那份文档。 张三不太喜欢李四,但又怕耽误了
工作不好交代。于是张三就把房间里文档的文档复印了一份,然后把那个复印件交给了李四(这叫传值)。 
李四拿到文档后(复印件),胡乱修改一番,心想:张三,这回要你好看。可是他没想到那份原件还好好的在张三的房间里锁着呢。
  
以上故事对应:
public static void counter(int count) {
count = 2; 

这个李四不甘心,于是他偷偷地配了一把张三的钥匙(这叫传引用), 准备进入房间修改那份文档。
这事被张三及时发现,他悄悄的把李四配的钥匙换成了另外一个房间的钥匙。
李四去了错误的房间。 张三再次以胜利告终! 
以上故事对应:
public static void changeA1(int[] ints) { 
 
ints = temp;  
int[] temp = new int[3];
ints[0] = 7;
ints[1] = 8;
ints[2] = 9;

李四锲而不舍,他趁张三还沉浸两次胜利的喜悦里,终于成功的配了钥匙(这叫传引用),达到了修改那份文档原件的目的。
以上故事对应:
public static void changeA2(int[] ints) {
ints[0] = 4;
ints[1] = 5;
ints[2] = 6;

故事讲完了。 这里需要注意的是无论是传值还是传引用,传的都是复本(文档复印件或配的钥匙)。


相关文档:

深入了解Java的String

一、从根本上认识java.lang.String类和String池
首先,我建议先看看String类的源码实现,这是从本质上认识String类的根本出发点。从中可以看到:
1、String类是final的,不可被继承。public final class String。
2、String类是的本质是字符数组char[], 并且其值不可改变。private final char value[];
然后打开Str ......

java中连接各数据库的驱动类和连接方式

1.JAVA连接ACCESS数据库
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
String url="jdbc:odbc:Driver={MicroSoft Access Driver (*.mdb)};DBQ="+application.getRealPath("/Data/ReportDemo.mdb");
Connection conn = DriverManager.getConnection(url,"","");
在上面的连接方法中,所涉及到的参数含义如下所示 ......

JAVA反射机制事例二

import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
public class Test {
/**
* @param args
*/
public static void main(String[] args) {
try {
Class cls = com.lwf.util.CommonUtil.class;
Object obj = cls.newInstance();
Method addMethod = cls.ge ......

java classLoader 原则

要理类加载体系结构,就必须清楚如下几点比较基本的原则:
1. classLoader是一种父子树形结构(注:这里不是指类继承的父子关系)
2. 父classLoader无法看到子classLoader加载的类
3、虚拟机遵守双亲委托加载原则,即任何子classLoader须首先委托父classLoader先加载需要的类,当父classLoader加载不到时再由子classLoa ......

Java Reflection 浅析1

Reflection 的简单应用,包括field, method,constructor的应用。
package com.gaoqian.reflection;
import java.lang.reflect.Array;
import java.lang.reflect.Constructor;
import java.lang.reflect.Field;
import java.lang.reflect.Method;
import java.lang.reflect.Modifier;
import java.lang.reflect.Typ ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号