主讲教师许燕青闽南理工学院实践教学中心计算机教研室课件_第1页
主讲教师许燕青闽南理工学院实践教学中心计算机教研室课件_第2页
主讲教师许燕青闽南理工学院实践教学中心计算机教研室课件_第3页
主讲教师许燕青闽南理工学院实践教学中心计算机教研室课件_第4页
主讲教师许燕青闽南理工学院实践教学中心计算机教研室课件_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、主讲教师:许燕青闽南理工学院实践教学中心计算机教研室JAVA程序设计实 验 目 录实验一 熟悉Java语言环境实验二 ava语言基础实验三 面向对象编程实验四 Java类和对象的高级特征实验五 图形用户界面的设计实验六 Java Applet的编写实验七 输入/输出流实验八 异常处理实验一 熟悉Java语言环境一、实验目的与实验要求 1、熟悉安装和配置JDK开发环境。 2、熟悉安装和配置IDE开发工具。 3、掌握Java程序编辑、编译和运行的过程。 4、掌握Java程序的构成特点。 5、总结在调试过程中的错误。二、实验原理及说明 通过实际操作,使学生对Java语言的使用有一个更深刻的理解;熟悉

2、Java的开发环境及程序结构。三、实验内容和步骤 1、下载、安装并设置 Java SDK 软件包。 2、安装 Java IDE软件。 3、编写一个简单的 Java 程序,运行结果为在屏幕上输出“HELLO WORLD!”。public class Hellopublic static void main(String args)System.out.println(HELLO WORLD!); / 4、编写一个Java Applet程序实现功能为:在屏幕上显示“HELLO WORLD!”。四、思考题 1、什么是Java虚拟机?它的作用是什么? 2、如何在不同的环境下设置环境变量?三、实验内容和

3、步骤 1、编写声明不同数据类型变量的程序文件 Java2_1.java,源代码如下:public class Java2_1public static void main(String args)byte b=0 x55;short s=0 x55ff;int i=1000000;long l=0 xffffL;char c=a;float f=0.23F;double d=0.7E-3;boolean B=true;String S=这是字符串类数据类型;System.out.println(字节型变量 b = +b); System.out.println(短整型变量 s = +s); S

4、ystem.out.println(整型变量 i = +i); System.out.println(长整型变量 l = +l); System.out.println(字符型变量 c = +c);System.out.println(浮点型变量 f = +f);System.out.println(双精度变量 d = +d);System.out.println(布尔型变量 B = +B); System.out.println(字符串类对象 S = +S);编译并运行该程序。2、建立 Java2_2.java 文件,通过本程序了解变量的使用范围,源代码如下。public class Jav

5、a2_2static int i=10;public static void main(String args) int k=10; System.out.println(i=+i);System.out.println(k=+k); System.out.println(i=+i);System.out.println(k=+k); /编译时将出错,已出k的使用范围编译 Java2_2.java,此时会出现错误提示。因为变量 k 在方法块中声明,在方法块之外它是不存在的,所以编译时会出错。修改上面的程序,并成功运行该程序。5、运行下面的程序,理解String类常用方法的使用。public c

6、lass 2_4public static void main (String args)String str=”I like java programming”;int i1=str.indexOf(J);String s1=str.substring(i1);String s2=str.substring(i1,i1+4);int i2=str.lastIndexOf(J);String s3=str.substring(i2+5);System.out.println(s1=+s1);System.out.println(s2=+s2);System.out.println(s3=+s3

7、);四、思考题1、定义变量的作用是什么?2、&和&有什么区别?3、break和continue在流程控制中的作用是什么?实验三 面向对象编程一、实验目的与实验要求 1、理解 Java 语言是如何体现面向对象编程基本思想。 2、了解类的封装方法,以及如何创建类和对象。 3、掌握成员变量和成员方法的特性及构造方法和析构方法的使用。 4、熟练掌握 OOP 方式进行程序设计的方法,理解类的继承性和多态性的作用。二、实验原理及说明 Java语言中引入了类,因此在程序设计中可以把数据及对数据的操作封装在一起;类可以从其他类中继承数据和方法。 三、实验内容和步骤 1、定义一个“圆”类Circle,该圆类的数

8、据成员包括:圆心点位置及圆的半径;方法成员有:设置圆心位置和半径的方法,获取圆心位置和半径的方法及构造方法。要求构造方法可以接收圆心位置参数,而半径使用缺省值1。编写完整的程序并创建Circle类的对象,并且分别调用各种方法,对比这些方法的执行结果,并据此写出详细的实验报告。 2、定义以上圆类Circle的子类SubCircle,使它具有获取半径方法、设置半径方法和构造方法,要求构造方法可同时接收圆心位置及半径两个参数。编写完整的程序并创建SubCircle类的对象,并且分别调用各种方法,对比这些方 3、多态在工资系统中的应用。下面给出一个根据雇员类型利用多态性完成工资单计算的程序。定义一个类

9、Employee作为超类,Employee的子类有Boss(每星期发给他固定工资,而不计工作时间)、PieceWorker(按其生产的产品数发放工资)、HourlyWorker(根据工作时间长短发放工资)。对所有雇员类型都使用earnings()方法完成其工资单的计算,但每个人挣的工资按他所属的雇员类计算,所有雇员类都是从超类Employee派出生的。所以在超类中声明earnings()方法,该方法没有实质性工作,而是在每个子类都提供恰当的earnings()方法的重写。为了计算雇员的工资,程序仅使用雇员对象的一个超类引导并调用earnings()方法。 /Employee超类的定义class

10、 Employee private String firstName; private String lastName; public Employee(String first,String last) firstName=first; lastName=last; public String getEmployeeName()return firstName; public String getLastName()return lastName; public String toStrings()return firstName+ +lastName; public double earn

11、ings()System.out.println(Employs salary is 0.0);return 0.0;/定义Boss类,为Employee的子类class Boss extends Employee private double weeklySalary; public Boss(String first,String last,double s) super(first,last); setWeeklySalary(s);public void setWeeklySalary(double s)weeklySalary=(s0?s:0);public double earni

12、ngs() return weeklySalary; public String toStrings() return Boss: +super.toStrings();/定义PieceWorker类,为Employee的子类class PieceWorker extends Employee private double wagePiece; private int quantity; public PieceWorker(String first,String last,double w,int q) super(first,last); setWage(w); setQuantity(q

13、);public void setWage(double w) wagePiece=(w0?w:0); public void setQuantity(int q) quantity=(q0?q:0);public double earnings() return quantity*wagePiece; public String toStrings() return PieceWoeker: +super.toStrings();public class TestEmployeepublic static void main(String args )/使用超类声明ref Employee

14、ref; String out=;/分别定义各子类 Boss b=new Boss(Hohn,Smith,800.00); PieceWorker p=new PieceWorker(Bob,Lewis,2.5,200); HourlyWorker h=new HourlyWorker(Karen,price,13.75,40);/使用子类分别实例化 ref=b; out+=ref.toStrings()+earned $+ref.earnings()+n+b.toStrings()+ earned $+b.earnings()+n;System.out.print(out);ref=p;ou

15、t+=ref.toStrings()+earned $+ref.earnings()+n+p.toStrings()+ earned $+p.earnings()+n;System.out.print(out);ref=h;out+=ref.toStrings()+earned $+ref.earnings()+n+h.toStrings()+ earned $+h.earnings()+n;System.out.print(out);四、思考题 1、如何继承一个类? 2、为什么说构造函数是一种特殊的方法?特殊在哪里?构造函数什么时候执行?被谁调用? 3、同名的不同方法共存的情况称为什么?如何

16、区分这些同名方法? 1、接口的编写 编写一个接口myInterface。interface myInterface int i=4; int k=5; void myFunc1(); int myFunc2(int x); 编写一个用于实现接口myInterface的类UseInterface。class UseInterface implements Interfaceclass int j; public void myFunc1() /在使用接口的类中一定要实现接口中的所有抽象方法 system.out.println(“myFunc1=”+1); public int myFunc2(

17、int i) System.out.println(“func2=”+1); return i;public static void main(String srgs)UseInterface x = new UseInterface(); x.myFunc1();x.myFunc2(k); 2、抽象类和最终类的使用 定义一个抽象类Shape用于描述图形,具有“名称”(name)属性以及计算其面积和周长的两个抽象方法GetArea()和GetLength()。定义一个最终类Circle继承自类Shape,增加了一个描述半径的属性radius及带参的构造函数用于该类对象的初始化操作,同时实现了S

18、hape类中的两个抽象方法来计算圆的面积和周长。定义一个最终类Rectangle继承自类Shape,增加了两个属性length和width用于描述矩形的长和宽及带参的构造函数用于完成对该类对象的初始化,同时实现了Shape类中的两个抽象方法来计算矩形的面积和周长。 重写上面的程序,要求三将Circle类和Rectangle类放到不同的包中,用包的技术组织程序的设计。同时要求程序能从键盘上接受数据以便求解不同的几何图形的周长面积。四、思考题1、内部类inner class和外部类的区别? 2、抽象类和接口的区别? 实验五 图形用户界面的设计一、实验目的与实验要求 掌握GUI编程中的主要概念:AW

19、T,Swing,窗口、面板,容器布局,布局管理器。掌握GUI编程。掌握事件编程机制。二、实验原理及说明 图形用户界面是应用程序与用户交流的图形接口,由各种不同的组件按照一定的布局模式排列组成的,如菜单、按钮、标签等,与这些组件配合工作的还有一些相关的事件。三、实验内容和步骤 1、编程包含一个标签和一个按钮,单击按钮时,标签的内容在“你好”和再见之间切换。 2、编程包含一个单选按钮组和一个普通按钮,单选按钮组中包含三个单选,文本说明分别为“普通”、“黑体”和“斜体”。选择文本标签为“普通”的单选按钮时,普通按钮中的文字为普通字体,选择文本标签为“黑体”的单选按钮时,普通按钮中的文字的字体为黑体,

20、选择文本标签为“斜体”的单选按钮时,普通按钮中的文字的字体为斜体。 3、编程确定当前鼠标的位置坐标。 4、编程使用BorderLayout布局方式放置5个按钮。四、思考题 1、Java的事件处理机制是怎样 2、若一个数据只有两种取值可能,采用哪种组件表示比较合适?如果有二种到三种取值可能,采用哪种合适?如果取值的可能大于5个,采用哪种组件合适?实验六 Java Applet的编写一、实验目的与实验要求 1、掌握Java Applet程序结构和开发过程。 2、了解Applet运行机制。 3、学会编写Applet对应的HTML文件,掌握从HTML文件向Applet传递参数的方法。 4、了解Applet与浏览器的通信。 5、掌握Applet图形界面设计。二、实验原理及说明 学习编辑、编译、运行Applet程序的方法。在Applet程序中没有实现main()方法,这是Applet与应用程序Application的区别之一。由于Applet中没有main()方法作为Java解释器的入口,所以必须编写HTML文件,把该Applet嵌入其中,然后用appletviewer来运行,或在支持Java的浏览器上运行,如IE。通过程序的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论