分享
 
 
 

Java之路( 1 )----帮你完成HelloWorld

王朝java/jsp·作者佚名  2006-01-08
窄屏简体版  字體: |||超大  

Java之路----帮你完成HelloWorld

转眼在csdn已经满月了,看到好多初学java的朋友会有关于错误提示Noclassdeffounderror………这样的问题,想到自己初学的时候也曾被这种郁闷的问题弄得焦头烂额,很多问题是不会在教科书里面有讲的,因为,教科书不会捕捉我们的“异常“:)。于是就整理了一下我见到的朋友们提出的问题,希望能对后来者有所帮助。

1.Java开发中系统环境变量设置(JDK):

工欲善其事,比先利其器。环境变量这一关,大家是必须要过的,下面是各种操作系统里面的环境设定。

Win2000/winXP中:

右键我的电脑à属性à高级à环境环境变量

classpath=.;jdk安装目\lib

path=jdk安装目录\bin

注意:一定不可忽略“.”,他表示的是我们的当前工作目录,没有他,会有很多麻烦出现的。

Winme中:

“开始à程序à附件à系统工具à系统信息“中,选择工具à系统配置实用程序à环境

设定:

classpath=.;jdk安装目\lib

path=jdk安装目录\bin

Win98中:

修改autocexe.bat 就是修改自动批处理文件。

添加:

set classpath=.;jdk安装目\lib

set path=jdk安装目录\bin;%path%

linuX中:

假设JDK安装在/home/jdk1.4.0/下,打开/etc/profile,在其中加入:

PATH="/home/jdk1.4.0/bin:$PATH"

CLASSPATH=.:/home/jdk1.4.0/jre/lib/rt.jar:/home/jdk1.4.0/lib/tools.jar

JAVA_HOME=/home/jdk1.4.0

export PATH CLASSPATH JAVA_HOME

2.设定好了我们的工作环境后,让我们来看一看我们的HelloWorld程序吧。

public Class HelloWorld {

public void HelloWorld(){

//构造函数

}

public static void main ( String args[] )

{

system.out.println ("HelloWorld!");

}

}

上面的程序有三处错误,看到了么?不要笑哦,这种错误确实会发生的。下面是把它改正过后的代码:

public class HelloWorld {

public HelloWorld(){

//构造函数

}

public static void main ( String args[] )

{

System.out.println ("HelloWorld!");

}

}

class和System的大小写,这个问题虽然一般不会出现,但大小写问题在整个java世界里确实是值得重视的一个基本问题,所以我把它写出来个大家提个醒,只要大家不用为这样的错误费时费力,大可认为我只是为了博您一笑。构造函数本来对HelloWorld来说是可有可无的,但是我有意添加这个构造函数,原因有两个:第一,构造函数没有返回值,大家都知道,就算是初学大概也会对此很不屑,1+1=2还拿出来干嘛。但是确实有很多初学者会返回一个void,void也是一种返回值,这个概念就是我的第一个目的了,有些初学者会认为void就是没有返回值,错!!!第二,你应该为你的类编写默认构造函数,就算他什么也不做,只起到和系统给你的默认构造函数一样的作用。当你不编写默认构造函数的时候,系统会给你一个,但是前提是你这个类里没有任何构造函数。忽略这个问题,可能会让你的继承体系出现问题。(可能这里说这些太早,所以教材上不会说,但这些东西,总是先记住的好,免得载大跟头)。(顺便说一句构造函数也可以是protected和private的,不是一定要public,别怪我蘑记^^。确实有很多人认为构造函数一定要public的,错!!!)。

3程序没问题,环境变量没问题,还是会出问题:)看看我们的执行要注意什么吧

不带包的编译:

javac 类名.java

java 类名

不带包的编译只要注意大小写,一般应该不会有问题了。

javac HelloWorld.java 不要写成 javac helloworld.java

java HelloWorld 不要写成java HelloWorld.class

另外,一般此时大家的工作目录和HelloWorld.java所在目录是相同的,这就是最开始环境变量”.”的作用了。

带包的编译:

javac -d 包的父目录 类名.java

java 包名.类名

这里要注意的是大家的工作目录要与包的父目录所在目录相同。

还有另外一个问题,大家先看一下问题的提出(跟HelloWorld关系虽然不大,但是问题也很有代表性)

我的包如下:

package c05;

public class PackagedClass{

public PackagedClass(){

System.out.println("Creating a packaged class");

}

public static void main(String[] args){}

}

程序如下:

//package c05;

import c05.PackagedClass;//如果换成import c05.*;就报错

public class Foreign{

public static void main(String[] args){

PackagedClass pc = new PackagedClass();

}

}

PackagedClass不是c05的子包阿,就是一个类阿,为什么用* 不行那?

这是论坛里一个朋友的问题。很郁闷吧:)

这里因为要import c05.PackagedClass;的类和c05.PackagedClass;在同一个目录内,就会出现上

面的问题,两个类不要放同一个地方了,赫赫,大家自己解决吧^^.希望这篇文章会对初学的你有

所帮助,如果你遇到过跟”HelloWorld”有关的问题这里没有提及,也希望帮忙填补一下:)。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有