度java语言程序设计实验指导书5611.docx

上传人:b****8 文档编号:27872058 上传时间:2023-07-05 格式:DOCX 页数:59 大小:1.12MB
下载 相关 举报
度java语言程序设计实验指导书5611.docx_第1页
第1页 / 共59页
度java语言程序设计实验指导书5611.docx_第2页
第2页 / 共59页
度java语言程序设计实验指导书5611.docx_第3页
第3页 / 共59页
度java语言程序设计实验指导书5611.docx_第4页
第4页 / 共59页
度java语言程序设计实验指导书5611.docx_第5页
第5页 / 共59页
点击查看更多>>
下载资源
资源描述

度java语言程序设计实验指导书5611.docx

《度java语言程序设计实验指导书5611.docx》由会员分享,可在线阅读,更多相关《度java语言程序设计实验指导书5611.docx(59页珍藏版)》请在冰豆网上搜索。

度java语言程序设计实验指导书5611.docx

度java语言程序设计实验指导书5611

实验一:

熟悉java开发环境

一、实验目的

1.了解Java开发运行环境,同时学会设置JDK6.0路径;

2.学习在DOS环境下编译和运行Application程序。

三、实验内容

1.先安装JDK6.0,安装好后,进行JDK6.0路径设置(验证性实验)。

2.在DOS环境下编译和运行程序HelloJava.java,观察运行成果(验证性实验)。

四、实验的软硬件环境要求

硬件环境要求:

PC计算机;内存512MB以上

使用的软件名称、版本号以及模块:

操作系统:

WindowsXP或Windows7

软件:

JDK6.0;DOS环境

五、知识准备

前期要求掌握的知识:

了解如何配置JDK编译环境。

实验相关理论或原理:

JDK(JavaDevelopmentKit)是SunMicrosystems针对Java开发员的产品。

自从Java推出以来,JDK已经成为使用最广泛的JavaSDK。

JDK是整个Java的核心,包括了Java运行环境,Java工具和Java基础的类库。

JDK是学好Java的第一步。

而专门运行在x86平台的Jrocket在服务端运行效率也要比SunJDK好很多。

从SUN的JDK5.0开始,提供了泛型等非常实用的功能,其版本也不断更新,运行效率得到了非常大的提高。

本实验指导书使用最新的jdk1.6.0_02。

六、验证性实验

1.JDK6.0的安装和JDK6.0路径设置

(1)从网上下载JDK6.0,如:

(2)双击后进行JDK6.0的安装,如图1.1所示:

图1.1进入安装界面

(3)点击接受后,可以自定义安装,这里使用安装程序的默认路径:

C:

\ProgramFiles\Java\jdk1.6.0_02\;如图1.2所示:

 

图1.2设置安装路径,开始自定义安装

(4)点击下一步,就可以安装了如图1.3所示:

 

图1.3正在安装JDK6.0

(5)等到安装完成会弹出“安装完成”框,如图1.4所示,则完成JDK6.0的安装:

 

图1.4JDK6.0安装完成

(6)安装好JDK6.0后,可以打开安装的目录如图1.5所示:

 

图1.6JDK安装好后生成的文件

如果想在系统的任意目录下编译和运行编写好的Java程序,需要先设置环境变量,请按以下步骤配置(记着JDK的默认安装路径C:

\ProgramFiles\Java\jdk1.6.0_02\;)。

(7)鼠标右键单击“我的电脑”,选择“属性”,在弹出对话框中选择“高级”下的环境变量如图1.7所示:

 

图1.7Windows系统特性界面

(8)在“系统变量”中选择Path,单击“编辑”按钮(如图1.8所示),在弹出的“变量值”文本框中添加“;C:

\ProgramFiles\Java\jdk1.6.0_02\bin”,单击确定按钮(如图1.9所示)。

 

 

图1.8Windows系统变量对话框

 

图1.9编辑系统变量Path

(9)在“系统变量”中单击“新建”按钮(如图1.10所示),在弹出对话框中的“变量名”后输入java_home,“变量值”后输入“C:

\ProgramFiles\Java\jdk1.6.0_02\bin”,单击“确定”按钮(如图1.11所示)。

 

图1.10选择“新建”系统变量

 

 

图1.11新建系统变量java_home

(10)在“环境变量”下单击“新建”按钮,在弹出对话框中的“变量名”后输入classpath,在“变量值”后输入“C:

\ProgramFiles\Java\jdk1.6.0_02\bin\tools.jar;C:

\ProgramFiles\Java\jdk1.6.0_02\jre\lib\rt.jar;.;”,单击“确定”按钮(如图1.12所示结果)。

 

图1.12新建系统变量classpath

(11)至此环境变量设置完毕,用户可以通过在DOS环境下直接键入javac命令按回车来检查环境变量设置是否成功,如果设置成功则可以看到如图1.12所示结果。

 

图1.12javac命令的相关使用语法

在以后需要进入DOS命令直接编译和运行Java程序时,只需进入Java程序所在的存放目录,通过javac和Java命令编译和执行相应程序。

2.在DOS环境下编译运行Application—HelloJava.java

(1)实验要求

在试验1所安装的JDK6.0和设置的JDK路径的基础上,使用任意文本编辑器编写程序HelloJava.java(代码见参考代码),编写好后,将文件保存成以HelloJava.java为文件名的文件。

使用DOS命令进入HelloJava.java文件所放的目录(如图1.13所示,如:

C:

\Example),使用javac命令编译该程序,通过编译后再该文件夹中会生成一个名为HelloJava.class的class文件(如图1.14所示),该class文件包含程序的字节码,使用Java命令执行该class文件,可在控制台下看到执行的结果(如图1.16所示)。

图1.13HelloJava.java文件的目录

在DOS环境下使用【cd文件名】格式进入下一级目录,然后键入javacHelloJava.java编译程序。

(可通过cd..返回上一级目录)

图1.14编译程序HelloJava.java

这样打开Example文件,将发现系统自动生成了HelloJava.class文件,如图1.15所示:

图1.15生成了HelloJava.class文件

然后继续输入javaHelloJava命令,按回车后可以发现输出“HelloJava!

”,这也就是程序运行的结果(如图1.16所示)。

图1.16一个Application输出HelloJava

(2)源程序代码参考

publicclassHelloJava{

//输出HelloJava!

//主程序入口

publicstaticvoidmain(String[]args){

System.out.println("HelloJava!

");

}

}

 

实验二:

对象和类

一、实验名称和性质

所属课程

面向对象程序设计

实验名称

对象和类

实验学时

2

实验性质

✓验证综合✓设计

必做/选做

✓必做选做

二、实验目的

1.理解对象和类,用类建立对象模型;

2.学会如何定义类和创建类的对象;

3.在用构造方法创建对象时理解构造方法的作用;

4.学会使用关键字this访问对象。

三、实验内容

1.编写日期类MyDate,定义日期所用变量并进行初始化,定义修改日期的方法changeDate()用布尔变量flag来实现程序的结束与否,用displayDate()输出日期,用方法showTips()制出菜单,写出main()方法演示程序功能(验证性实验)。

2.编写一个圆类Circle,其中有圆周率,半径和圆对象个数,其中圆周率和圆对象个数为static成员,此外,Circle中还有两个static方法分别是设置圆周率和显示当前圆对象个数的,其余都是实例成员(设计性实验)。

3.编写一个复数类,包含实部和虚部属性,还有复数相加、相减以及复数的求模、输出复数字符串“a+bi”(设计性实验)。

四、实验的软硬件环境要求

硬件环境要求:

PC计算机;内存512MB以上

使用的软件名称、版本号以及模块:

操作系统:

WindowsXP或Windows7

软件:

JDK6.0;DOS环境

五、知识准备

前期要求掌握的知识:

了解Java中类的创建,对象的创建和使用。

实验相关理论或原理:

(1)在Java语言里,对象是一组描述对象的属性和操作方法的集合,其中属性表明对象的状态,方法表明对象的行为。

类是对象的定义。

一个对象具有哪些属性和方法,由类来决定。

从编程角度看,类是一种复合数据类型,它封装了一组变量和方法(函数)。

(2)对象与类是不同但是又紧密相联的概念。

类是对象的定义,对象由类来生成。

类与对象的关系好比铸造车间里模具与产品的关系。

模具只有一个,但是用这个模具可以浇铸出很多成型的产品出来,模具的形状决定了浇铸出来的产品的外形。

在Java语言里用new关键字来生成对象,通常的格式为:

类名对象名=new类名([参数]);

(3)静态变量:

类加载时初始化,全类公有,类名.访问;

成员变量:

创建对象过程中初始化,对象公有,对象.访问。

六、验证性实验

验证性实验1

1.实验要求

创建、编译和运行程序MyDate.java,运行结果如图7.1所示:

图7.1日期类运行结果

2.程序参考代码

//MyDate.java

importjava.util.InputMismatchException;

importjava.util.Scanner;

publicclassMyDate{

intyear;

intmonth;

intday;

intnum_order;//接受来自命令行的输入,int类型,只要负责showTips()的命令代号和日期的修改

booleanflag=true;//控制程序的退出,当flag=false时,退出

publicMyDate(){

year=2012;

month=3;

day=14;

}

//构造函数

publicMyDate(intyear,intmonth,intday){

this.year=year;

this.month=month;

this.day=day;

}

//showTips()用于提示用户相关操作代号

publicvoidshowTips(){

System.out.println("1修改年份");

System.out.println("2修改月份");

System.out.println("3修改日期");

System.out.println("4修改全部");

System.out.println("5退出修改");

}

publicvoidchangeDate(){//修改日期的函数

Scanner_order=newScanner(System.in);

System.out.print("请输入您的命令:

");

//下面的数字异常没有捕获

num_order=_order.nextInt();

if(num_order==1){

System.out.println("请输入新的年份:

");

year=_order.nextInt();

System.out.println();

}elseif(num_order==2){

System.out.println("请输入新的月份:

");

month=_order.nextInt();

System.out.println();

}elseif(num_order==3){

System.out.println("请输入新的日份:

");

day=_order.nextInt();

System.out.println();

}elseif(num_order==4){

System.out.println("请输入新的年份:

");

year=_order.nextInt();

System.out.println("请输入新的月份:

");

month=_order.nextInt();

System.out.println("请输入新的日份:

");

day=_order.nextInt();

System.out.println();

}elseif(num_order==5){

flag=false;

System.out.println("程序结束");

}

}

publicvoiddisplayDate(){//输出现在的日期函数

if(month>=0&&month<=12&&day>=1&&day<=31){

System.out.println("目前的日期为:

"+year+"年"+month+"月"+day

+"日");

}else{

System.out.print("您的输入与设计情况不相符,请确认后重新来过!

");

}

showTips();

changeDate();

}

publicstaticvoidmain(String[]args){

MyDatemydate=newMyDate();

while(mydate.flag){

try{

mydate.displayDate();

}catch(InputMismatchExceptionime){

System.out.print("您的输入与要求不一致,请确定后重新来过!

");

mydate.changeDate();

}

}

}

}

七、设计性实验

【实验一】

1.实验要求

编写一个圆类Circle,其中有圆周率,半径和圆对象个数,其中圆周率和圆对象个数为static成员,此外,Circle中还有两个static方法分别是设置圆周率和显示当前圆对象个数的,其余都是实例成员。

程序运行结果如图7.2所示:

图7.3程序运行结果

2.程序参考代码

//StaticTest.java

classCircle{

staticdoublepi=3.14;

staticintobjectNo=0;

intradius;

Circle(intr){

radius=r;

objectNo++;

}

Circle(){

radius=2;

objectNo++;

}

doublegetArea(){

returnpi*radius*radius;

}

staticvoidsetPI(doublep){

pi=p;

}

voidsetRadius(intr){

radius=r;

}

staticvoiddisplayNo(){

System.out.println("当前圆对象个数是:

"+objectNo);

}

}

publicclassStaticTest{

publicstaticvoidmain(Stringargs[])

{

Circlecir1=newCircle(5);

System.out.println("cir1圆周率是:

"+cir1.pi);

System.out.println("cir1的半径是:

"+cir1.radius);

System.out.println("cir1的面积是:

"+cir1.getArea());

cir1.displayNo();

cir1.setRadius(10);

Circlecir2=newCircle();

cir2.setPI(3.1415);

System.out.println("cir1圆周率是:

"+cir1.pi);

System.out.println("cir1的半径是:

"+cir1.radius);

System.out.println("cir2的半径是:

"+cir2.radius);

System.out.println("cir2的面积是:

"+cir2.getArea());

cir2.displayNo();

}

}

 

实验三:

图形用户界面程序设计入门

一、实验名称和性质

所属课程

面向对象程序设计

实验名称

图形用户界面程序设计入门

实验学时

2

实验性质

✓验证综合设计

必做/选做

✓必做选做

二、实验目的

1.理解和掌握图形上下文和图形对象的基本概念;

2.了解Color类的构造方法和常用的方法;

3.熟练掌握和运用常用的绘图方法;

4.了解和运用Math类来解决实际问题。

三、实验内容

1.国际象棋棋盘由8行*8列的深浅相间的格子构成。

编写程序绘制基本国际象棋棋盘(验证性实验)。

2.绘制Sin(x)和Cos(x)曲线,编写程序Trigonmetric.java,实现Java中特殊图形的输出(验证性实验)。

四、实验的软硬件环境要求

硬件环境要求:

PC计算机;内存512MB以上

使用的软件名称、版本号以及模块:

操作系统:

WindowsXP或Windows7

软件:

MyEclipse

五、知识准备

前期要求掌握的知识:

Java的Math类和Color类。

实验相关理论或原理:

ColorSpace

此抽象类用做一个颜色空间标记,标识Color对象的特定颜色空间,或者通过ColorModel对象标识Image、BufferedImage或GraphicsDevice的特定颜色空间。

ICC_ColorSpace

ICC_ColorSpace类是抽象ColorSpace类的实现。

ICC_Profile

与设备无关和设备相关颜色空间的颜色配置文件数据表示形式,该表示形式基于国际色彩联盟规范ICC.1:

2001-12,颜色配置文件的文件格式。

ICC_ProfileGray

ICC_Profile类的子类,表示满足以下标准的配置文件:

配置文件的颜色空间类型是TYPE_GRAY,并且配置文件包括grayTRCTag和mediaWhitePointTag标记。

ICC_ProfileRGB

ICC_ProfileRGB类是ICC_Profile类的子类,它表示满足以下标准的配置文件:

配置文件的颜色空间类型是RGB。

验证性实验1

1.实验要求

编写程序Chessboard.java程序,输出国际象棋棋盘如图12.1所示:

 

12.1JApplet小程序的运行结果

2.实验参考代码

//Chessboard.java

importjava.awt.*;

importjavax.swing.*;

publicclassChessboardextendsJApplet{

intbaseXPosition,baseYPosition;

intcurrentXPosition,currentYPosition;

publicvoidinit(){

baseXPosition=40;//棋盘的开始x位置

baseYPosition=40;//棋盘的开始y位置

setBackground(Color.black);//设置背景颜色黑色

}

publicvoidpaint(Graphicsg){//绘制棋盘

currentXPosition=baseXPosition;//currentXPosition当前的x位置;

currentYPosition=baseYPosition;//currentYPosition当前的y位置;

for(introw=0;row<8;row++){

currentXPosition=baseXPosition+row*40;

for(intcolumn=0;column<8;column++){

if((column+row)%2==0)

g.setColor(Color.blue);//设置棋盘格子的颜色

else

g.setColor(Color.GRAY);//设置棋盘格子的颜色

currentYPosition=baseXPosition+column*40;

g.fillRect(currentXPosition,currentYPosition,40,40);

//在当前位置绘制棋盘的格子,每个格子的大小是40¡Á40像素;

}

}//endfor

}//endpaint;

}

验证性实验2

1.实验要求

编译、运行程序Trigonmetric.java程序,分析通过Math类实现特殊图形的绘制。

结果如图12.2所示:

 

12.2三角函数图形结果

2.实验参考代码

//Trigonometric.java

importjava.awt.*;

importjavax.swing.*;

publicclassTrigonmetricextendsJFrame{

publicTrigonmetric(){

super();

setTitle("三角函数");

setSize(400,300);

setVisible(true);

}

publicvoidpaint(Graphicsg){

Dimensiond=getSize();

inty1,y2;

g.setColor(Color.black);

inth=d.height/4;

g.drawLine(0,h*2,d.width,h*2);

g.drawLine(h,0,h,d.height);

for(intx=10;x

{

y1=h+(int)((1.0+Math.sin((x-10)*0.05))*h);

//求sin曲线y轴坐标

y2=h+(int)((1.0+Math.cos((x-10)*0.05))*h);//求cos曲线y轴坐标

g.setColor(Color.red);

g.drawOval(x,y1,5,5);

g.setColor(Color.blue);

g.drawOval(x,y2,5,5);

}

}

publicstaticvoidmain(Stringargs[]){

Trigonmetrictr=newTrigonmetric();

tr.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 自然科学 > 数学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1