JAVA实验一.docx
《JAVA实验一.docx》由会员分享,可在线阅读,更多相关《JAVA实验一.docx(11页珍藏版)》请在冰豆网上搜索。
![JAVA实验一.docx](https://file1.bdocx.com/fileroot1/2023-2/1/c09f819a-9666-4d4a-a663-ffee6fd7619c/c09f819a-9666-4d4a-a663-ffee6fd7619c1.gif)
JAVA实验一
实验一Java程序的编辑、编译、运行环境
§1.1实验目的、内容及性质
掌握使用JDK开发Java程序的步骤、了解Java程序运行环境掌握程序调试的全部过程,学会编写和调试JavaApplication程序。
掌握Java程序的基本语法。
实验性质:
验证、必做
实验学时:
2学时
§1.2问题及思考
1、什么是Java虚拟机?
它的作用是什么?
什么是Java运行环境?
如何实现跨平台?
什么是类库?
什么是Java虚拟机与字节码?
什么是Java的byte-codes?
它的最大好处是什么?
2、什么是环境变量path、classpath、java_home;查看系统中对环境变量path、classpath、java_home的设置,解释其作用;说明不同操作系统如何查看和设置环境变量;
3、什么叫做源程序?
什么叫做编译?
机器语言程序、高级语言程序以及可表示成Java字节码的程序之间的区别是什么?
如何编译源代码文件?
编译你刚保存的文件?
有何问题?
如何修改?
4、如何执行Java程序?
执行你刚编译好的程序?
结果如何?
§1.3实验指导
1、JDK的安装和环境变量设置
(1)点击下面网址进入JDK1.6下载页面:
(2)下载完成后,双击图标进行安装,安装过程中可以自定义安装目录等信息,例如我们选择安装目录为C:
\ProgramFiles\Java\jdk1.6.0
以下过程为配置JDK环境变量:
(3)右击“我的电脑”,点击“属性”:
(4).选择“高级”选项卡,点击“环境变量”:
(5)在“系统变量”中,设置3项属性,JAVA_HOME,PATH,CLASSPATH(大小写无所谓),若已存在则点击“编辑”,不存在则点击“新建”:
(6)JAVA_HOME指明JDK安装路径,就是刚才安装时所选择的路径C:
\ProgramFiles\Java\jdk1.6.0
,此路径下包括lib,bin,jre等文件夹(此变量最好设置,因为以后运行tomcat,eclipse等都需要依靠此变量)
Path(该环境变量系统中已经存在,不要删除原来的环境变量path,只需点击编辑在环境变量值末尾追加值即可)使得系统可以在任何路径下识别java命令,设为:
;%JAVA_HOME%\bin
CLASSPATH为java加载类(classorlib)路径,只有类在classpath中,java命令才能识别,设为:
%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar
%JAVA_HOME%就是引用前面指定的JAVA_HOME。
(7)“开始”->“运行”,键入“cmd”:
2、HelloWorld程序调试
(1)请用任何文本编辑器输入以下内容并保存为Hello.java文件(只能保存为Hello.java,不能使用别的文件名),请严格注意大小写:
publicclassHello{
publicstaticvoidmain(String[]args){
System.out.println("Hello,world.");
}
}
然后打开控制台,切换到存放Hello.java的目录下如放在d:
\根目录下,输入:
D:
\>javacHello.java
如果编译通过,屏幕上没有任何显示。
否则,屏幕上会输出出错信息,请仔细检查源代码。
(2)运行一个Java程序
打开控制台,切换到存放Hello.class的目录下,然后输入:
D:
\>java-classpathd:
\Hello
稍等几秒钟,屏幕输出:
Hello,world.
说明运行成功!
注意事项:
Java严格区分大小写,无论是源代码,还是文件名,目录名,Windows用户要特别留意。
此外,不要用中文作文件名和目录名,也不要在文件名或目录名中使用特殊字符,以免在Linux下运行正常的Java程序不能在Windows中运行。
习惯上,类名以大写字母开头,方法名以小写字母开头,请严格遵守命名习惯以免在某些IDE中不能正常编译或运行。
2几个常用DOS命令
(1)显示当前目录下有哪些文件
命令格式:
dir
(2)更改当前盘
命令格式:
盘符:
例如将当前盘改为D盘用如下命令。
C:
\>D:
D:
\>
(3)进入当前目录下某个子目录
命令格式:
cd子目录名
例如,以下命令进入xyz子目录
D:
\>CDxyz
D:
\xyz>
3、补充示例
(1)for语句
//用for语句计算10的阶乘
publicclassForOp1
{
publicstaticvoidmain(Stringargs[])
{
intn;
longresult;
for(n=10,result=1;n>0;n--)
result*=n;
System.out.println("10!
="+result);
}
}
(2)while语句
//用while语句计算10的阶乘
publicclassWhileOp
{
publicstaticvoidmain(Stringargs[])
{
intn=10;
longresult=1;
while(n>=1)
result*=n--;
System.out.println("10!
="+result);
}
}
§1.4实践编程
编写以下程序,并在Dos状态下调试通过
1、编写程序输出以下信息:
**************************
*WelcomeToJava!
源文件
publicclassHello{
publicstaticvoidmain(String[]args){
System.out.println("**************************");
System.out.println("*WelcomeToJava!
*");
System.out.println("**************************");
}
}
截图
2、编写应用程序输出如下三角形。
*
***
*****
*******
【参考程序】
publicclassStar
{
publicstaticvoidmain(Stringa[])
{
System.out.println(" *");
System.out.println(" ***");
System.out.println("*****");
System.out.println("*******");
}
}
源文件:
publicclassStar
{
publicstaticvoidmain(Stringa[]){
System.out.println("*");
System.out.println("***");
System.out.println("*****");
System.out.println("*******");
}
}
截图
3、编写程序比较两个整数大小,并输出大的数
源文件:
importjava.util.Scanner;
publicclassTest{
publicstaticvoidmain(String[]args){
Scannerscan=newScanner(System.in);
System.out.println("请输入两个数字x,y");
intx=scan.nextInt();
inty=scan.nextInt();
intmax=x>y?
x:
y;
System.out.println("max="+max);
}
}
截图
4找出三个整数中的最大值和最小值。
importjavax.swing.JOptionPane;
publicclassE1{
publicstaticvoidmain(String[]args){
intx=20;
inty=99;
intz=33;
inta
System.out.println("x="+x);
System.out.println("y="+y);
System.out.println("z="+z);
if(x>y)
{
a=x;
x=y;
z=a;
}
if(x>z)
{
a=x;
x=z;
z=a;
}
if(y>z)
{
a=y;
y=z;
z=a;
}
{System.out.println(""+z);}
{System.out.println(""+x);}
}
}
}
5、判断一个年份是否为闰年。
根据天文历法规定,每400年中有97个闰年。
凡不能被100整除但能被4整除的年份,或能被400整除的年份是闰年,其余年份是平年。
如1996、2000是闰年,而1900是平年。
importjavax.swing.JOptionPane;
publicclassE3
{
publicstaticvoidmain(String[]args)
{
intyear=2004;
booleana;
a=year%4==0&&year%100!
=0||year%400==0;
if(a)
{
System.out.println(year+"是瑞年");
}
else
System.out.println(year+"不是瑞年");
}
}
6、输入一个三位整数,将它反向输出.如整数为123,则输出321
importjavax.swing.JOptionPane;
publicclassE5{
publicstaticvoidmain(String[]args)
{
intn=123;
intz;
System.out.println("输入数字为:
"+n);
System.out.println("反向输出为:
");
do
{
z=n%10;
System.out.println(+z);
n/=10;
}
while(n!
=0);
}
}