日期:2014-05-19  浏览次数:20737 次

当前类中用类名引用和this引用有什么区别~?
public void sendFile(String filename){
File file = new File(Processor.WEB_ROOT+filename);


}


public void sendFile(String filename){
File file = new File(this.WEB_ROOT+filename);


}

以上是Processor类里的同一个方法。
WEB_ROOT是这样的:
public final static String WEB_ROOT="F:\\workspace\\asdfgh\\htdocs";

用这两种方式调用有什么区别?
难道它们2个表示的不是同一个东西吗?


------解决方案--------------------
就你这个程序而言,没有区别

类中:static 的变量,属于类变量,也就是说这个类的所有成员共享的。。在内存中只有一份。

即使你有再多的类实例。。。这个变量也只有一份。

所以你用this操作也好,用类名点也好。。其实操作都是同一个变量。

不过习惯上,是用类名来点,因为他是类变量,这样阅读性好一点,也更符合我们的编码规范