您的位置:首页 > 编程语言 > Java开发

java初学碰到的两个问题:win xp下环境变量设置细节 和 变量的初始化问题

2008-05-26 16:40 357 查看
Part 1
基本配置网上搜一下都能找到,但是好事需要注意一些细节:

JAVA_HOME=X:/jdk*;(目的是为了指向JDK的bin目录,这里面放的是各种编译执行命令。别把分号漏了!!我就漏了)

PATH=X:/jdk*/bin;( 中间有分号间隔,最后还是有分号)

CLASSPATH=.;C:/jdk*/lib;C:/jdk*/lib/tools.jar;(这是类的路径。前面加上点和分号,意为首先在当前目录查找)

那么为什么要设置环境变量,以前编写c语言的时候怎么不设置呢?由于WINDOWS默认的搜索顺序,先搜索当前目录的,再搜索系统目录的,再搜索PATH环境变量设定的。你在编写java程序时,在一个指定目录,这里没有编译执行命令,而系统目录里面,也没有编译执行命令。所以放在环境变量里面,从这里你应该可以看出,环境变量是干什么用的了。简单说就是告诉操作系统到那里去找指定的文件。你要是把系统目录给改了,看你用dos命令还好不好使。配置完后,在命令提示符下,键入java -version,如果出现java的一些信息,说明配置成功。

如果上面的几个细节不注意,很可能在dos下用java||javac命令产生一些错误,如“Exception in thread"main"java.lang.NoClassDefFoundError:ServerProgram.java” 或者根本没法运行java、javac。

Part2

书上看到全局变量自动初始化,局部变量必须手动初始化。如下面全局变a:
class subTest {
int a;
public subTest(int v){
a+=v;
System.out.println(a + "");
}
public static void main(String args[]){
new subTest(1);
}
}
但是不知道下面这个程序为什么编译不能通过,错误是没初始化a、b,我觉得他们也是全局变量:
public class DefaultInit {
int a;
char b;
public static void main(String[] args){
System.out.println(a + "");
System.out.println(b + "");
}
}
不知道为什么了。。。。

我是新手,高手轻拍~~~
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: