版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
本题得分本题得分publicclassHelixPhalanx{publicstaticint[][]northWest(intn)//返回存储螺旋方阵的二维数组publicstaticvoidprint(int[][]mat)//输出二维数组}publicclassRMB//人民币类{本题得分//返回金额x的中文大写形式字符串,例如,x=123.45,转化为“壹佰贰拾叁元肆角伍分”publicstaticStringtoString(doublex){}}本题得分本题得分publicclassPersonextends{privateStringname;//姓名,实例成员变量privateMyDatebirthdate;//出生日期,MyDate类见例3.2//构造方法{//调用本类声明的set(…)成员方法}//无参数的构造方法,重载{//调用本类已声明构造方法,参数创建MyDate实例}_________________________________________//拷贝构造方法,深拷贝,重载{_____________________________________//MyDate深拷贝,创建日期实例,图3.5(c)}publicvoidset(Stringname,MyDatebirthdate)//设置属性值{=name==null?"":name;//将String类的空对象设置为""空串this.birthdate=birthdate;//引用赋值}publicStringtoString()//对象描述字符串,成员变量之间以逗号","分隔{return+","+(this.birthdate==null?"":birthdate.toString());}publicintgetAge()//返回当前对象今年的年龄,重载{}publicintolder(Personper)//按年龄比较Person对象大小,返回this与per对象出生年份的差值{}_________________________________________//比较对象相等,____________Object类的方法{}}本题得分本题得分publicclassStudentextendsPerson{privateStringspec;//专业,子类增加的成员变量publicStudent(Stringname,MyDatebirthdate,Stringspec)//构造方法{_____________________________________________//调用父类的一个构造方法this.set(spec);//初始化子类自己声明的成员变量}publicStudent(){____________________________________________//调用父类无参数的构造方法this.set("");//参数""为成员变量________________赋值}publicStudent(Personperson,Stringspec)//构造方法,由父类Person实例提供初值{___________________________________________//调用父类的拷贝构造方法,深拷贝personthis.set(spec);}_______________________________________________//拷贝构造方法,深拷贝{___________________________________________//调用本类声明的成员方法}publicvoidset(Stringspec)//设置子类增加的属性值,___________父类set(…)成员方法{this.spec=spec==null?"":spec;}_______________________________________________//对象描述字符串,_____________父类方法{}_______________________________________________//比较对象相等,_____________父类方法{}}本题得分本题得分//矩形类,继承闭合图形抽象类,计算周长和面积;实现可比较接口,按面积比较对象大小publicclassRectangleextendsClosedFigure_________________________________________________________{protectedintlength,width;//矩形的长度和宽度;继承祖先类Figure的point1表示矩形左上角点坐标publicRectangle(Pointpoint1,intlength,intwidth){//调用父类的一个构造方法this.length=length;this.width=width;}publicRectangle(Rectanglerec)//拷贝构造方法{//调用本类已声明的构造方法}publicStringtoString()//对象描述字符串,形式为“(左上角点,长度,宽度)”。覆盖{return"("+________________+",长度"+this.length+",宽度"+this.width+")";//调用父类的toString()}_____________________________________________________________//计算矩形周长{}_____________________________________________________________//计算矩形面积{}_____________________________________________________________//比较对象相等。覆盖{}_____________________________________________________________//按面积比较对象大小{}}【实验目的】调用Person类声明的方法比较Person对象大小及应用。本题得分publicintgetAge()//返回this对象今年的年龄publicintolder(Personper)//按年龄比较Person对象大小,返回per与this对象出生年份的差值publicstaticPersonoldest(Person[]pers)//返回pers对象数组元素的年龄最大者【实验题4-2】①Person类声明实现可比较接口,按出生日期【实验题4-5】实现以下方法,当objs引用Person[]对象数组时,功能同//限定T或T的某个祖先类声明实现Comparable<T>接口,T类提供比较对象大小的compareTo(…)方法publicstatic<TextendsComparable<?superT>>Tmin(T[]objs)//返回objs数组元素最小值本题得分//返回objs数组元素最小值,委托comp比较器提供比较T类对象大小的compare(T)方法publicstatic<T>Tmin(T[]objs,Comparator<?superT>comp)本题得分①使用文本行数组输入数值和显示结果(不可编辑使用单选按钮数组或组合框显示并选择运算符,单选按钮或组合框和按钮响应动作事件,读取整数或浮点数,显示计算结果。单击窗8-1读取整数文件中的int整数,添加到组合框。实现以下方法。本题本题得分//若filename指定文件名的文件存在,先删除combox组合框所有数据项;再将从文件中读取的//所有int整数,添加到组合框。若文件不存在,则弹出对话框,告知错误publicstaticvoidreadFrom(Stringfilename,JComboBox<Integer>combox)本题得分//将tablemodel表格模型中所有对象(包括空对象)写入由filename指定文件名的对象文件,//首先写入表格行列整数;返回写入的对象个数(不包括表格行列数若有异常,则弹出对话框告知publicstaticintwriteTo(Stringfilename,DefaultTableModeltablemodel)教材:《Java程序设计实用教程(第6版)》,编著,电子工业出版社,2024年。本课程有16学时实验,教学大纲给出8个实验安排,考核要求是:编写程序、完善功能并运行调试通过,第2~8章作业题,提交纸质版;第6章实验题,撰写实验报告。本文件给出各项实验的训练目标、要求和内容的详细说明,有11道程序题作业,100分。1.实验目的和要求①掌握JDK的安装和设置方法,掌握在JDK环境中编译、运行Java应用程序的操作。②理解Java包的概念和作用,掌握在JDK环境中创建自定义包、声明导入包的方法。③掌握在Eclipse集成开发环境中编辑、编译和运行Java应用程序的操作。2.实验任务,验证型1-1安装和设置JDK,编辑、编译、运行例1.1和例1.2的Java应用程序,理解类和包。1-2安装Eclipse集成开发环境,编辑、编译、运行例1.1和例1.2的Java应用程序。1.实验目的和要求①掌握Java语言的语法基础,采用包括循环、数组、静态方法等成分设计Java应用程序;熟悉字符串运算。②掌握Eclipse程序调试技术,单步运行,查看运行过程中的变量值,找出程序错误位置和出错原因。2.实验任务,第2章作业题和答案,20分=10分×2题2-1【例2.18】输出螺旋方阵,采用二维数组存储。【实验目的】采用二维数组存储,二维数组作为函数的参数和返回值。【题意】螺旋方阵将从1开始的自然数由方阵的最外圈向内螺旋方式地顺序排列。例如,4阶螺旋方阵如下,起点是(0,0),顺时针方向。实现以下方法。publicclassHelixPhalanx{publicstaticint[][]northWest(intn)//返回存储螺旋方阵的二维数组publicstaticvoidprint(int[][]mat)//输出二维数组}画出螺旋方阵二维数组存储结构示意图。【答案】publicclassHelixPhalanx1{//计算n阶螺旋方阵,n>0,起点在西北角(0,0),顺时针前进方向:右、下、左、上;返回二维数组。//二维数组算法,算法共循环(n+1)/2圈,最外圈各行/列循环分别写n、n-1、n-1、n-2个数。publicstaticint[][]northWest(intn){if(n<=0)//要求n>0,若反之,则不操作{System.out.println("n="+n+",不能计算螺旋方阵,要求n>0。");returnnull;}System.out.println(n+"阶螺旋方阵,起点在西北角(0,0),顺时针前进方向:右、下、左、上。");intmat[][]=newint[n][n],i=0,j=0,value=1;for(i=0;i<(n+1)/2;i++)//i控制生成方阵的圈数,一圈内有4条边{//j控制生成一条边的数据for(j=i;j<n-i;j++)//北边一行,列从左到右//算法第一次循环写n个数mat[i][j]=value++;//value从1递增到n*nfor(j=i+1;j<n-i;j++)//东边一列,行从上到下mat[j][n-i-1]=value++;for(j=n-i-2;j>=i;j--)//南边一行,列从右到左mat[n-i-1][j]=value++;for(j=n-i-2;j>i;j--)//西边一列,行从下到上mat[j][i]=value++;}returnmat;}publicstaticvoidprint(int[][]mat)//输出二维数组{for(inti=0;i<mat.length;i++){for(intj=0;j<mat[i].length;j++)System.out.print(String.format("%4d",mat[i][j]));System.out.println();}}}2-2【实验题2-9】RMB人民币类。【实验目的】使用String常量字符串类。【题意】声明RMB人民币类如下,实现其中成员方法。publicclassRMB//人民币类{//返回金额x的中文大写形式字符串,例如,x=123.45,转化为“壹佰贰拾叁元肆角伍分”publicstaticStringtoString(doublex)}【答案】见教材第6章例6.3。1.实验目的和要求①掌握Java类的封装、继承、多态和抽象设计方法,理解面向对象思想。②掌握Eclipse的编译路径设置,引用其他项目中声明的类。2.实验任务,第3章作业题和答案,30分=10分×3题3-1【例3.3】简版Person类,深拷贝,填空。【实验目的】类的封装,深拷贝。【题意】声明Person矩形类如下,深拷贝,填空。【答案】带下划线的是填空和答案。publicclassPersonextendsObject{privateStringname;//姓名,实例成员变量privateMyDatebirthdate;//出生日期,MyDate类见例3.2publicPerson(Stringname,MyDatebirthdate)//构造方法{this.set(name,birthdate);//调用本类声明的成员方法}publicPerson()//无参数的构造方法,重载{ this("",newMyDate());//调用本类已声明的构造方法,参数创建MyDate实例}publicPerson(Personper)//拷贝构造方法,重载,复制对象{ this(,newMyDate(per.birthdate));//MyDate深拷贝,创建日期实例,图3.5(c)}publicvoidset(Stringname,MyDatebirthdate)//设置属性值{=name==null?"":name;//将String类的空对象设置为""空串this.birthdate=birthdate;//引用赋值}publicStringtoString()//对象描述字符串,成员变量之间以逗号","分隔{return+","+(this.birthdate==null?"":birthdate.toString());}publicintgetAge()//返回当前对象今年的年龄,重载{ returnMyDate.getThisYear()-this.birthdate.getYear();//MyDate.getThisYear()返回今年的年份}publicintolder(Personper)//按年龄比较Person对象大小,返回this与per对象出生年份的差值{returnthis.birthdate.getYear()-per.birthdate.getYear();}//比较this与obj对象是否相等,覆盖Object类的方法。//当参数obj引用Person实例时,算法逐域比较各成员变量对象值是否相等publicbooleanequals(Objectobj){if(this==obj)//this指代调用当前方法的对象returntrue;if(objinstanceofPerson)//当obj引用实例属于Person及其子类{Personp=(Person)obj;//类型强制转换,per也引用obj引用的实例return.equals()&&this.birthdate.equals(p.birthdate);//其中,name等执行String类的equals(obj),birthdate执行MyDate类的equals(obj)}returnfalse;}}3-2【例3.5】简版Student类,继承与多态,填空。【实验目的】类的封装、继承与多态。【题意】声明Student矩形类如下,继承Person类,填空。【答案】带下划线的是填空和答案。publicclassStudentextendsPerson{privateStringspec;publicStudent(Stringname,MyDatebirthdate,Stringspec){super(name,birthdate);this.set(spec);}publicStudent(){super();this.set("");}publicStudent(Personperson,Stringspec){super(person);this.set(spec);}publicStudent(Studentstu){ this(stu,stu.spec);//专业,子类增加的成员变量//构造方法//调用父类同参数的构造方法//初始化子类自己声明的成员变量//默认调用父类无参数的构造方法//【答】参数""为成员变量spec赋值//构造方法,由父类Person实例提供初值//调用父类的拷贝构造方法,深拷贝person//拷贝构造方法,深拷贝//调用本类声明的成员方法,其中stu传递子类对象}publicvoidset(Stringspec)//设置子类增加的属性值,重载父类set(…)成员方法,参数列表不同{this.spec=spec==null?"":spec;}publicStringtoString()//对象描述字符串,覆盖父类方法{returnsuper.toString()+","+this.spec;}//覆盖,比较this与obj对象是否相等,先调用父类方法,再比较本类各成员变量是否相等。与父类实例不可比publicbooleanequals(Objectobj){if(this==obj)returntrue;if(objinstanceofStudent)//当obj引用实例属于Student及其子类,不包含Person类{Studentstu=(Student)obj;//类型强制转换,stu也引用obj引用的实例returnsuper.equals(stu)//调用父类方法&&this.spec.equals(stu.spec);//调用String类的equals(Object)}returnfalse;}}3-3【例3.7思考题】声明Rectangle矩形类,填空。【实验目的】类的封装、继承、多态和抽象,重点是比较对象相等和大小方法,§4.3.1实现可比较接口。【题意】设Point、Figure类覆盖equals(Object)方法。声明Rectangle矩形类如下,填空。【答案】带下划线的是填空和答案。//矩形类,继承闭合图形抽象类,计算周长和面积;实现可比较接口,按面积比较对象大小publicclassRectangleextendsClosedFigureimplementsComparable<Rectangle>{protectedintlength,width;//矩形的长度和宽度;继承祖先类Figure的point1表示矩形左上角点坐标publicRectangle(Pointpoint1,intlength,intwidth)//构造方法{super("矩形",point1);//调用父类的一个构造方法this.length=length;this.width=width;}publicRectangle(Rectanglerect)//拷贝构造方法,Point深拷贝{this(newPoint(rect.point1),rect.length,rect.width);//调用本类已声明的构造方法}publicStringtoString()//对象描述字符串,形式为“(左上角点,长度,宽度)”。覆盖{return"("+super.toString()+",长度"+this.length+",宽度"+this.width+")";//调用父类的toString()}publicdoubleperimeter()//计算矩形周长,实现父类的抽象方法{return(this.width+this.length)*2;}publicdoublearea()//计算矩形面积,实现父类的抽象方法{returnthis.width*this.length;}//【试题3】比较this与obj对象是否相等,当参数obj引用Rectangle实例时,逐域比较各成员变量是否相等publicbooleanequals(Objectobj)//与父类同名方法是“覆盖”关系{if(this==obj)//判断this和obj对象是否引用同一个实例,是ture/否falsereturntrue;if(objinstanceofRectangle)//判断obj对象引用的实例是否属于Rectangle类及其子类{Rectanglerect=(Rectangle)obj;//强制类型转换,此时obj对象引用的实例属于Rectangle类及子类returnthis.point1.equals(rect.point1)&&this.length==rect.length&&this.width==rect.width;}returnfalse;}//【试题4】实现Comparable<T>可比较接口,比较对象大小,返回表示大小关系的值-1、0、1publicintcompareTo(Rectanglerect)//按面积比较对象大小{if(this==rect)//若this和rect对象引用同一个实例,则相等return0;doublex=this.area()-rect.area();returnx==0?0:(x>0?1:-1);}}1.实验目的和要求①掌握声明接口和实现接口的类。②掌握比较对象大小的方法设计及应用,使用包括Java语言包中的可比较接口和Java实用包中的比较器接口。2.实验任务,第4章作业题和答案,25分=5分+10分×2题【实验目的】通过以下3题分别采用调用Person类声明的方法、可比较接口到比较器接口,研究比较对象大小的设计方法及应用。理解接口的作用,委托模型。3-4按年龄比较Person对象大小及应用。【实验目的】调用Person类声明的方法比较Person对象大小及应用。【题意】已知Person类声明以下成员方法:publicintgetAge()//返回this对象今年的年龄publicintolder(Personper)//按年龄比较Person对象大小,返回per与this对象出生年份的差值【实验题3-6】实现PersonArray类声明的以下方法。publicstaticPersonoldest(Person[]pers)//返回pers对象数组元素的年龄最大者【答案】publicstaticPersonoldest(Person[]pers)//返回pers对象数组元素的年龄最大者{if(pers==null||pers.length==0)returnnull;intmax=0;for(inti=1;i<pers.length;i++)if(pers[i].older(pers[max])>0)//或者if(pers[i].getAge()>pers[max].getAge())max=i;returnpers[max];}4-1Person类声明实现可比较接口,按出生日期比较对象大小及应用。【实验目的】理解接口的作用,委托模型。【题意】【实验题4-2】①Person类声明实现可比较接口,按出生日期比较对象大小。【实验题4-5】实现以下方法,当objs引用Person[]对象数组时,功能同oldest(Person[]),即返回年龄最大者(出生日期最小)。//限定T或T的某个祖先类声明实现Comparable<T>接口,T类提供比较对象大小的compareTo(…)方法publicstatic<TextendsComparable<?superT>>Tmin(T[]objs)//返回objs数组元素最小值【答】publicclassPersonimplementsComparable<Person>{publicMyDatebirthpublicintcompareTo(Personper){if(this==per)//若引用同一个实例,则相等return0;returnpareTo(per.birthdate);//比较日期大小,调用MyDate类的compareTo()}}publicstatic<TextendsComparable<?superT>>Tmin(T[]objs)//返回objs数组元素最小值{intmin=0;//记载最小值对象的下标for(inti=1;i<pers.length;i++)if(objs[i].compareTo(objs[min])>0)//发现更小者,委托模型min=i;returnobjs[min];//返回对象引用}4-2声明比较器接口类,按出生日期比较Person对象大小及应用。【实验目的】理解接口的作用,委托模型。【题意】【实验题4-3】①声明BirthdateComparator类实现比较器接口,为Person类提供按出生日期比较对象大小的方法。【实验题4-5】实现以下方法,当objs引用Person[]对象数组时,功能同oldest(Person[]),即返回年龄最大者(出生日期最小)。//返回objs数组元素最小值,委托comp比较器提供比较T类对象大小的compare(T)方法publicstatic<T>Tmin(T[]objs,Comparator<?superT>comp)【答】importjava.util.Comparator;//比较器接口//出生日期比较器类,按出生日期比较Person对象大小publicclassBirthdateComparatorimplementsComparator<Person>{publicintcompare(Personp1,Personp2){if(per1==per2)//若引用同一个实例,则相等return0;returnpareTo(p2.birthdate);//调用MyDate类compareTo()}}//返回objs数组元素最小值,委托comp比较器提供比较T类对象大小的compare(T,T)方法publicstatic<T>Tmin(T[]objs,Comparator<?superT>comp){intmin=0;for(inti=1;i<pers.length;i++)if(pare(objs[i],objs[min])>0)//发现更小者,委托模型min=i;returnobjs[min];}1.实验目的和要求①熟悉Java声明的运行时异常类;掌握try语句捕获并处理异常。②设计简单功能的图形用户界面,使用按钮等Swing基础组件,掌握布局管理,响应动作事件,处理数值格式异常。2.实验任务,第6章作业题和答案,15分6-1“算术运算器”图形用户界面。【题意】【思考题6-1】采用Swing组件设计“算术运算器”图形用户界面如图所示,2选1,要求如下。①使用文本行数组输入数值和显示结果(不可编辑使用单选按钮数组或组合框显示并选择运算符,单选按钮或组合框和按钮响应动作事件,读取整数或者浮点数,显示计算结果。单击窗口关闭按钮,关闭窗口。②避免“除数为0”,不捕获算术异常;捕获并处理数值格式异常,弹出对话框告知错误,重新输入。【答案】(1)图6-4a整数算术运算器,采用单选按钮数组显示并选择运算符。importjava.awt.*;//导入AWT包importjava.awt.event.*;importjavax.swing.*;//算术运算器框架类,读入整数;继承框架类;关闭窗口,响应动作事件publicclassRadioArithOperJFrameextendsJFrameimplementsActionListener{privateJTextField[]texts;//文本行数组,操作数和运算结果privateString[]operators={"+","-","*","/","%"};//算术运算符privateJRadioButton[]radios;//单选按钮数组,算术运算符privateStringoperate;//当前运算符字符串publicRadioArithOperJFrame(){super("算术运算器");this.setSize(500,100);this.setLocation(400,300);this.setBackground(Color.lightGray);this.setDefaultCloseOperation(EXIT_ON_CLOSE);this.getContentPane().setLayout(newFlowLayout());//流布局this.texts=newJTextField[3];//文本行数组,2个操作数和1个运算结果for(inti=0;i<this.texts.length;i++){this.texts[i]=newJTextField("",6);//文本行this.getContentPane().add(this.texts[i]);}this.texts[this.texts.length-1].setEditable(false);//只能显示,不允许编辑JPanelpanel=newJPanel();//运算符面板panel.setBorder(newTitledBorder("运算符"));//设置面板具有带标题的边框this.getContentPane().add(panel,1);ButtonGroupbgroup=newButtonGroup();//按钮组this.radios=newJRadioButton[operators.length];//单选按钮数组for(inti=0;i<this.radios.length;i++){this.radios[i]=newJRadioButton(operators[i]);//单选按钮this.radios[i].addActionListener(this);bgroup.add(this.radios[i]);//按钮组添加单选按钮panel.add(this.radios[i]);//面板添加单选按钮}this.radios[0].setSelected(true);//设置单选按钮为选中状态,没有触发动作事件this.operate=this.operators[0];JButtonbutton=newJButton("=");this.getContentPane().add(button,3);button.addActionListener(this);//按钮添加动作事件监听器this.setVisible(true);}publicvoidactionPerformed(ActionEventevent)//动作事件处理方法,单击按钮和单选按钮{if(this.texts[0].getText().isEmpty()||this.texts[1].getText().isEmpty())return;intx=0,y=0;Stringmessage="";try{x=Integer.parseInt(message=this.texts[0].getText());y=Integer.parseInt(message=this.texts[1].getText());}catch(NumberFormatExceptionex){JOptionPane.showMessageDialog(this,"\""+message+"\"字符串不能转换成整数。");return;}finally{}if(event.getSource()instanceofJRadioButton)//单击单选按钮this.operate=event.getActionCommand();//记住单选按钮的字符串switch(this.operate)//根据运算符分别计算{case"+":x+=y;break;case"-":x-=y;break;case"*":x*=y;break;case"/":case"%":if(y!=0)switch(operate){case"/":x/=y;break;case"%":x%=y;break;}elseJOptionPane.showMessageDialog(this,"除数为0,不能计算。");}this.texts[this.texts.length-1].setText((operate.indexOf("/%")==-1&&y==0)?"":x+"");//this.texts[this.texts.length-1].setText((oper.equals("/")||oper.equals("%")&&y==0)?"":x+"");}publicstaticvoidmain(String[]arg){newRadioArithOperJFrame();}}(2)图6-4b整数算术运算器,采用组合框显示并选择运算符。importjava.awt.*;//导入AWT包importjava.awt.event.*;importjavax.swing.*;//算术运算器框架类,读入整数或浮点数;继承框架类;关闭窗口,响应动作事件publicclassComboxArithOperJFrameextendsJFrameimplementsActionListener{privateJTextField[]texts;//文本行数组,操作数和运算结果privateJComboBox<String>combox;//组合框,算术运算符privateString[]operators={"+","-","*","/","%"};//算术运算符publicComboxArithOperJFrame(){super("算术运算器");this.setSize(360,100);this.setLocation(400,300);this.setBackground(Color.lightGray);this.setDefaultCloseOperation(EXIT_ON_CLOSE);this.getContentPane().setLayout(newFlowLayout());//流布局this.texts=newJTextField[3];//文本行数组,2个操作数和1个运算结果for(inti=0;i<this.texts.length;i++){this.texts[i]=newJTextField("",6);//文本行this.getContentPane().add(this.texts[i]);this.texts[i].setHorizontalAlignment(JTextField.CENTER);//设置水平方向居中,默认左对齐}this.texts[this.texts.length-1].setEditable(false);//只能显示,不允许编辑box=newJComboBox(operators);//组合框,默认不可编辑box.addActionListener(this);this.getContentPane().add(box,1);JButtonbutton=newJButton("=");this.getContentPane().add(button,3);button.addActionListener(this);//按钮添加动作事件监听器this.setVisible(true);}publicvoidactionPerformed(ActionEventevent)//动作事件处理方法,单击按钮和组合框{if(this.texts[0].getText().isEmpty()||this.texts[1].getText().isEmpty())return;doublex=0,y=0;Stringmessage="";try{x=Double.parseDouble(message=this.texts[0].getText());y=Double.parseDouble(message=this.texts[1].getText());}catch(NumberFormatExceptionex){JOptionPane.showMessageDialog(this,"\""+message+"\"字符串不能转换成整数。");return;}finally{}inti=box.getSelectedIndex();//获得组合框选中序号switch(i){case0:x+=y;break;//+case1:x-=y;break;//-case2:x*=y;break;//*case3:case4://“/”,整数除;"%",整数取余数if(y!=0)switch(i){case3:x/=y;break;case4:x%=y;break;}elseJOptionPane.showMessageDialog(this,"除数为0,不能计算。");}this.texts[this.texts.length-1].setText((i==3||i==4)&&y==0?"":x+"");}publicstaticvoidmain(String[]arg){newComboxArithOperJFrame();}}1.实验目的和要求设计复杂功能的图形用户界面,使用列表框、组合框、表格等Swing复杂组件存储T类数据集合,并实现添加、删除、查找、排序等操作;掌握多种布局管理的组合运用;响应多种事件;处理数值格式异常;熟悉菜单设计;熟悉在组件上画图的方法。2.实验任务,详见第6章实验题1.实验目的和要求使用线程技术实现数据结果集合的动态演示,或者绘图的动画功能。2.实验任务,详见第6章实验题在第6章实验题的功能基础上,使用线程技术实现数据结果集合的动态演示,或者绘图的动画功能。1.实验目的和要求使用字节流类读写类型文件,使用字符流类读写文本文件。2.实验任务,第8章作业题和
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2027年唐山滦河产业职业学院高职单招职业适应性测试考试模拟试卷及完整答案详解【典优】
- 2027年东营现代化工职业学院单招职业技能考试模拟试卷附答案详解【巩固】
- 2026年新能源材料研发创新报告:引领行业未来
- 2026年嵩岳职业学院高职单招职业技能考试模拟试卷(巩固)附答案详解
- 2026年宝鸡职业技术学院单招综合素质考试题库【夺冠】附答案详解
- 2026年智慧教育创新模式深度报告
- 2026年耐磨合金铸铁行业分析报告及创新报告
- 保险AI与监管科技(RegTech)融合路径
- 感恩教育感恩父母主题班会课件
- 2026北师大二下全册动画教学课件
- 2026年乡镇自来水抄表客服招聘考试笔试试题(含答案)
- 容县辅警招聘考试题库 (答案+解析)
- 2025年福州市鼓楼区城投集团招聘笔试历年参考题库(含答案详解)
- 2026内蒙古呼伦贝尔市海拉尔区红旅文化旅游开发有限责任公司下属四家子公司招聘23人考试参考题库及答案详解
- 2026年山东事业编统考考试《综合应用能力》真题及答案解析
- 现代渔业园区规划布局方案
- 期末模拟测试卷(试卷)2025-2026学年五年级数学下册人教版(含答案)
- 1.1 动与静 课件(共28张)2026-2027学年沪科版物理八年级全一册
- 中华人民共和国生态环境法典测试题及答案
- T∕CAPID 005.4-2023 垃圾焚烧发电工程质量监督检查大纲 第4部分:厂用电系统受电前监督检查
- 护理带教实习生工作总结(3篇)
评论
0/150
提交评论