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

Java中的值传递

 在Java中方法参数的传递,都是值传递,对象传递是地址 ,基本数据类型传递的是值。地址和值都值。
下面以一个例子来看内存中的数据变化情况
public class Test{
  
     private String name;
    public String getName(){
          return this.name;
    }
    public void setName(String name){
            this.name = name;
     }
    public callMethod(Test test){
       Test test1 = new Test();
        test1.setName("456");
       test.setName("123");
       test = test1;
       System.out.println("test name:"+test.getName());
    }
   public static void main(String []args){
        Test t = new Test();
        callMethod(t);
        System.out.println("t name:"+t.getName());
   }
}
运行结果:
test name:456
t name:123
内存变化情况如下图:
 (图一)调用方法之前实际上是声明了两个变量 test 它的作用域是方法内有效
 
(图二)callMethod(t); 调用方法,把t的的地址给test,他们指向同一个堆内存单元,执行这两个语句以后
test1.setName("123");
test.setName("456"); 都有了初始值
(图三)执行语句  test = test1; 把test1的地址给test test1和test 都指向同一个堆内存单元
(图四)方法调用结束,test和test1内存被释放掉


相关文档:

如何提高自己的Java编程水平[转载]

 不知不觉做软件已经做了十年,有成功的喜悦,也有失败的痛苦,但总不敢称自己是高手,因为和我心目中真正的高手们比起来,还差的太远。世界上并没有成为高手的捷径,但一些基本原则是可以遵循的。
  1. 扎实的基础。数据结构、离散数学、编译原理,这些是所有计算机科学的基础,如果不掌握他们,很难写出高水平的 ......

java中得到当前路径的方法


归纳一些网上取JAVA路径的方法:
注明:如果从ANT启动程序,this.getClass().getResource("")取出来的比较怪,直接用JAVA命令行调试就可成功。
得到classpath和当前类的绝对路径的一些方法
获得CLASSPATH之外路径的方法:
URL base = this.getClass().getResource(""); //先获得本类的所在位置,如/home/popeye/ ......

JAVA遍历一个文件夹中的所有文件

在实际项目中给定一文件夹,得到这个文件夹下所有的文件这样的需求并不是很多,更多的是查找或是删除某一具体的文件
import java.io.File;
import java.util.ArrayList;
public class FileTest {
 private static ArrayList<String> filelist = new ArrayList<String>();
 
 public stati ......

获取java 类的路径

public class Path {
 //get class absolute address
 public String getPath() {
  String classPath = getClass().getName();
  if (classPath.indexOf(".") != -1) {
   classPath = classPath.substring(classPath.lastIndexOf(".") + 1,
     ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号