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

Java基础——java的引用问题

1.
public class EasyError1 {
     class Student {
           private String name;
 
           public String getName() {
              return name;
           }
 
           public void setName(String name) {
              this.name = name;
           }
           }
public List<Student> getList(List<String> names){
    List<Student> studentList=new ArrayList<Student>();
    Student student=new Student();
    for(String str:names){
       student.setName(str);
       studentList.add(student);
    }
    return studentList;
}
public static void main(String[] args) {
    EasyError1 easyError1=new EasyError1();
    List<String> list=new ArrayList<String>();
    list.add("pitt");
    list.add("tom");
    list.add("weiling");
List<Student> studentList=  easyError1.getList(list);
for(Student student:studentList){
    System.out.println(student.getName());
}
}
}
/******************************************************
 * the results in console:
 *  weiling
 *  weiling
 *  weiling
 *因为Student student=new Student();写在了循环的外面,在循环里每次都把名字放在了一块堆内存里,并把引用
 *存放在了list中,只是一个引用,而不是三个不同的引用存放在list中,最后,这个引用只想向了“


相关文档:

java 面试题59道(含参考答案)


Java
基础方面
:
 
1
、作用域
public,private,protected,
以及不写时的区别
答:
区别如下:
作用域
           
当前类
       
同一
package  
子孙类
     &n ......

java程序员面试必备的32个要点

很经典的东西,被转的到处都是, 先写原文:
第一,谈谈final, finally, finalize的区别。
 final 用于声明属性,方法和类,分别表示属性不可变,方法不可覆盖,类不可继承。finally是异常处理语句结构的一部分,表示总是执行。finalize是 Object类的一个方法,在垃圾收集器执行的时候会调用被回收对象的此方法,可以覆盖 ......

JAVA反射机制

JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。
package mypakage;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method; ......

如何使用Proxy模式及Java内建的动态代理机制

1.Proxy
模式
代理模式支持将某些操作从实际的对象中分离出来,通过它的代理类提供处理。这样便于修改和管理这些特定的操作。
下面示例一个代理模式的实现。
<<interface>>Subject.java
package
com.zj.proxy;
 
public

interface
Subject {
   
void
operation1();
......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号