ImageVerifierCode 换一换
格式:DOCX , 页数:39 ,大小:114.05KB ,
资源ID:456113      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-456113.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(JAVA程序设计实验报告Word文档下载推荐.docx)为本站会员(b****1)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

JAVA程序设计实验报告Word文档下载推荐.docx

1、/Interfaceclass.class x=new Interfaceclass.class();不能对接口进行实例化UseInterface x=new UseInterface();x.func1();x.func2(k);多态在工资系统中的应用下面给出一个根据雇员类型利用abstract方法和多态性完成工资单计算的程序。 Employee是抽象类,Employee的子类有Boss(每星期发给他固定工资,而不计工作时间)、 CommissionWorker(除基本工资外还根据销售额发放浮动工资)、PieceWorker(按其生产的产品数发放工资)、HourlyWorker(根据工作时间

2、长短发放工资)。该例的Employee的每个子类都声明为final,因为不需要再继承它们生成子类。对所有雇员类型都使用earnings()方法,但每个人挣的工资按他所属的雇员类计算,所有雇员类都是从超类Earnings()派出生的。所有在超类中声明earnings()为抽象方法,并且对于每个子类都提供恰当的earnings()的实现方法。为了计算雇员的工资,程序仅仅使用雇员对象的一个超类引导 并调用earnings()方法。在一个实际的工资系统中,各种Employee对象的引用可以通过一个Employee引用数组来实现。程序依次使用数组的每个元素(Employee引用)调用每个对象的emplo

3、yee()方法。(1)编辑Test.java,设保存在D: abstract class 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 toString()retur

4、n firstName+lastName;public abstract String earnings();/定义Boss类,为Employee的子类final class Boss extends Employee private double weeklySalary; public Boss(String frist,String last,double s)super(frist,last);setWeeklySalary(s); public void setWeeklySalary(double s) weeklySalary=(s0?s:0); public String ea

5、rnings()return Boss+super.toString();/定义CommissiomWorker类,为Employee的子类final class CommissionWorker extends Employee private double salary; private double commission; private int quantity; public CommissionWorker(String first,String last,double s,double c,int q) super(first,last); setSalary(s); setCo

6、mmission(c); setQusntily(q); /*public String earnings() */public void setQusntily(double s) salary=(spublic double setCommission(double c) return commission=(cc: double i=salary+commission+quantity; return Double.valueOf(i).toString(); public String toString() returnCommissionWorker public void setS

7、alary(double s) salary=s;/定义PieceWorker类,为Employee的子类 final class PieceWorker extends Employeeprivate double wagePiece;private int quantity;public PieceWorker(String first,String last,double w,int q) setWage(w); setQuantity(q); public void setWage(double w)wagePiece=(ww: public double setQuantity(in

8、t q)return q+wagePiece; return PieceWoeker return Double.valueOf(wagePiece+quantity).toString();/定义HourlyWorker类,为Employee的子类 class HourlyWorker extends Employee private double wage; private double hours; public HourlyWorker(String first,String last ,double w,double h) setHours(h); public void setWa

9、ge (double w) wage=(wpublic void setHours(double h) hours=(h=0&h168?h:public String earnings()HourlyWorkerclass Text public static void main(String args )/使用超类声明ref Employee ref; String out=;/分别定义各子类 Boss b=new Boss(Hohn,Smith,800.00); CommissionWorker c=new CommissionWorker(SueHones,400.00,3.0,150)

10、; PieceWorker p=new PieceWorker(BobLewis,2.5,200); HourlyWorker h=new HourlyWorker(Karenprice,13.75,40);/使用子类分别实例化ref=b;out+=ref.toString()+earned $+ref.earnings()+n+b.toString()+b.earnings()+System.out.print(out);ref=c;+c.toString()+c.earnings()+ref=p;+p.toString()+p.earnings()+ref=h;+h.toString()+

11、h.earnings()+ 包的建立与使用(1) 编辑Calculate.java,设保存在D:package mypackage;public class Calculate private int a; public Calculate(int a) this.a=a;from constrartion+this.a); public double volume(double height,double width,double depth) return height*width*depth; int add(int x, int y) return x+y; protected voi

12、d a() System .out.println(from constration+a);编译,查看D:myjava目录下是否生成了myoackage文件夹,在该文件夹中是否有Calculate.class文件。(2) 编辑Interfaceclass.java,设保存在D: import mypackage.Calculate;class PackageDemo public static void main(string ags ) Calculate c=new Calculate(10); double s=c.volume(5,6,7); System.out.println(s)

13、; /int b=c.add(5,6); /c.a();五、实验结果实验二、异常处理实验一、实验目的 异常的生产及捕获自定义异常及其使用面向对象的基本知识异常的捕获计算两数相除并输出结果。使用两个catch子句,分别捕捉除数为0的异常和参数输入有误异常。编辑Ex1.java,保存在D:myjava目录下。import java.io.*;class Ex1public static void main(String args ) try BufferedReader strin=new BufferedReader( new InputStreamReader(System.in); Syst

14、em.out.print(请输入除数:); String cl=strin.readLine(); int a=Integer .parseInt(cl); System .out .print(请输入被除数: cl=strin .readLine(); int b=Integer .parseInt(cl); int c=b/a; System .out .println(商为:+c); /捕获与I/O有关的异常 catch(IOException e)e .printStackTrace () ; /捕获数值转化时的异常,如不能将字符转化成数值 catch(NumberFormatExce

15、ption e)请输入整数! /e .printStackTrace(); /捕获除数为0的异常 catch(ArithmeticException e)除数不可以0! /e .printstackTrace();编译并运行,当输入除数为0时,将有异常出现,当输入的不是整数时,如将30输成了3o,出现的是另一种异常。定义异常编写程序包含自定义异常,当输入数值为13和4时抛出该异常。编辑Ex2.java,设保存在D: class Ex2 extends Exception Ex2(String msg) super(msg);class MyEx private int x; void setX

16、(int x) this.x=x; void f1() throws Ex2 if(x=13) throw new Ex2(I dont like 13! else if(x=4)t like 4! else System .out.println(100/x); MyEx a=new MyEx(); try a.setX(5); /a.setX(13);/a.setX(4);/a.setX(0);a.f1(); catch(Exception e)get message:+e.getMessage();编译并运行,分别取消注释上面程序中被注释的语句。当释放a.setX(13)语句后,查看运行

17、结果,当释放a.setX(4)语句后,查看运行结果。实验三、GUI(图形用户接口)实验掌握用MouseListener和MouseMotionListener接口处处理鼠标事件Mouse Event的方法。掌握制作菜单及处理菜单事件的方法掌握创建对话框及定位、显示、激活和关闭对话框的方法图形用户接口编程所需的基本类及使用方法制作一个简单的画板编辑Mou.java,设保存在D:import java.applet.*;import java.awt.*;import java.awt.event.*;public class Mou extends Applet implements Mouse

18、MotionListener int x= -1,y= -1; public void init() setBackground(Color.cyan); addMouseMotionListener(this); public void paint(Graphics g) if(x!= -1&y!= -1) g.setColor(Color.red); g.drawLine(x,y,x,y); public void mouseDragged(MouseEvent e) x=(int)e.getX(); y=(int)e.getY(); public void mouseMoved(Mous

19、eEvent e) /由于使用的是Listener,需要将其他不重载的方/法,列举在这里 public void update(Graphics g) paint(g); public static void main(String args) Mou mou=new Mou(); mou.setVisible(true); mou.init(); mou.paint()编译并运行查看结果.菜单的编写编辑TestMenu.java,设保存在D:import java.awt.event.ItemEvent;class MyMenhFrame extends Frame implements A

20、ctionListener,ItemListener MenuBar m_MenuBar; Menu menuFile,menuEdit,m_Edit_Paste; MenuItem mi_File_Open,mi_File_Close,mi_File_Exit,mi_Edit_Copy; MenuItem pi_New,pi_Del,pi_Pro,mi_Paste_All,mi_Paste_Part; CheckboxMenuItem mi_Edit_Cut; PopupMenu popM; TextArea ta; public void itemStateChanged(ItemEven

21、t e) MyMenhFrame() super(拥有菜单的窗口 /指定窗口标题 ta=new TextArea(no choice,5,20); ta.addMouseListener(new HandleMouse(this); /文本域响应鼠标事件 add(Center,ta); /创建弹出式菜单 popM=new PopupMenu(); pi_New=new MenuItem(新建 pi_New.addActionListener(this); popM.add(pi_New); pi_Del=new MenuItem(删除 pi_Del.addActionListener(this

22、); popM.add(pi_Del); pi_Pro=new MenuItem(属性 pi_Pro.addActionListener(this); popM.add(pi_Pro); /将弹出式菜单加在文本域上 ta.add(popM); m_MenuBar=new MenuBar(); /创建菜单栏 menuFile=new Menu(文件 /创建菜单项、菜单自项并指定快捷键 mi_File_Open=new MenuItem(打开,new MenuShortcut(o); mi_File_Close=new MenuItem(关闭 mi_File_Exit=new MenuItem(退

23、出 mi_File_Exit.setShortcut(new MenuShortcut(x mi_File_Open.setActionCommand( mi_File_Close.setActionCommand( mi_File_Open.addActionListener(this); mi_File_Close.addActionListener(this); /自身作为监视器 mi_File_Exit.addActionListener(this); menuFile.add(mi_File_Open); menuFile.add(mi_File_Close); menuFile.a

24、ddSeparator(); menuFile.add(mi_File_Exit); m_MenuBar.add(menuFile); menuEdit=new Menu(编辑 mi_Edit_Copy=new MenuItem(复制 mi_Edit_Cut=new CheckboxMenuItem(剪切 m_Edit_Paste=new Menu(粘贴 mi_Paste_All=new MenuItem(全部粘贴 mi_Paste_Part=new MenuItem(部分粘贴 mi_Edit_Copy.addActionListener(this); mi_Edit_Cut.addItemListener(this);

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2