Java与网络程序设计考核要求Word下载.docx
《Java与网络程序设计考核要求Word下载.docx》由会员分享,可在线阅读,更多相关《Java与网络程序设计考核要求Word下载.docx(15页珍藏版)》请在冰豆网上搜索。
四
五
总分
分数
2011-2012
(1)的“Java与网络程序设计”课程为专业选修课,鉴于课程特点,“Java与网络程序设计”课程采用开卷实践考核方式,选修此课程的同学应于第17教学周完成实践考核题目,并上交程序成品、完成答辩。
实践考核题目
独立完成Project1、Project2、Project3和Project4四个项目。
Project1
(1)按照如下UML图要求实现GeometricObject类和Circle类:
(2)修改Circle类,使其实现Comparable接口并覆盖Object类的equals方法,其中实现Comparable接口的Circle类能根据radius数值比较大小,覆盖的equals方法能根据radius数值判定Circle对象是否相等;
(3)编写测试类,创建半径为5和10的Circle对象,显示equals方法和compareTo方法调用结果。
importjava.util.Date;
//编写测试类,创建半径为5和10的Circle对象,显示equals方法和compareTo方法调用结果。
publicclassTest
{
publicstaticvoidmain(String[]args)
{
Circlec1=newCircle(5);
Circlec2=newCircle(10);
System.out.println(c1.equals(c2));
System.out.println(pareTo(c2));
}
}
classGeometricObject
privateStringcolor;
privatebooleanfilled;
privateDatedateCreated;
GeometricObject()
GeometricObject(Stringcolor,booleanfilled)
this.color=color;
this.filled=filled;
publicStringgetColor(){
returncolor;
publicvoidsetColor(Stringcolor){
this.color=color;
publicbooleanisFilled(){
returnfilled;
publicvoidsetFilled(booleanfilled){
this.filled=filled;
publicDategetDateCreated(){
returndateCreated;
publicStringtoString()
//?
?
publicdoublegetArea()
return0;
//
publicdoublegetPerimeter()
//
classCircleextendsGeometricObjectimplementsComparable
privatedoubleradius;
Circle()
Circle(doubleradius)
this.radius=radius;
Circle(doubleradius,Stringcolor,booleanfilled)
this.setColor(color);
this.setFilled(filled);
publicdoublegetRadius()
returnradius;
publicvoidsetRadius(doubleradius)
this.radius=radius;
publicdoublegetDiameter()
returnthis.radius*2;
//直径
//实现Comparable接口的Circle类能根据radius数值比较大小
publicintcompareTo(Objecto)
if(getRadius()>
((Circle)o).getRadius())
return1;
elseif(getRadius()<
return-1;
else
return0;
//覆盖的equals方法能根据radius数值判定Circle对象是否相等;
publicbooleanequals(Circlec)
if(getRadius()==c.getRadius())
returntrue;
returnfalse;
Project2:
编写程序显示一个饼图,使用饼图显示作业、平时测验、期中考试和期末考试占总成绩的百分比。
假设作业占20%用红色显示,平时测验占10%用蓝色显示,期中考试占30%用绿色表示,期末考试占40%用橙色表示。
importjavax.swing.*;
importjava.awt.*;
importjava.awt.event.ActionEvent;
importjava.awt.event.ActionListener;
importjava.util.Scanner;
publicclassTest
ZiFrameframe=newZiFrame();
frame.setTitle("
饼图"
);
//面板标题
frame.setSize(300,200);
//面板大小
frame.setResizable(false);
//不能改变面板大小
frame.setLocationRelativeTo(null);
//显示器上居中显示
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//关闭操作
frame.setVisible(true);
classZiFrameextendsJFrame
ZiFrame()
setLayout(newBorderLayout());
add(newNewJPanel(),BorderLayout.CENTER);
classNewJPanelextendsJPanel
protectedvoidpaintComponent(Graphicsg)
super.paintComponent(g);
intxCenter=getWidth()/2;
intyCenter=getHeight()/2;
intradius=(int)(Math.min(getWidth(),getHeight())*0.4);
intx=xCenter-radius;
inty=yCenter-radius;
g.setColor(Color.red);
g.fillArc(x,y,2*radius,2*radius,0,72);
g.setColor(Color.blue);
g.fillArc(x,y,2*radius,2*radius,72,36);
g.setColor(Color.green);
g.fillArc(x,y,2*radius,2*radius,98,108);
g.setColor(Color.white);
g.fillArc(x,y,2*radius,2*radius,206,154);
g.setColor(Color.black);
g.drawString("
Projects--20%"
3*radius,40);
Quizzes--10%"
2*radius,10);
Midterms--40%"
0,radius);
Final--40%"
2*radius,140);
Project3:
编写一个程序,计算投资值在给定利率以及给定年数下的未来值。
计算的公式如下所示:
使用文本域显示利率、投资总额和年数。
当用户点击Calculate按钮时,在文本域显示未来的总额。
/*
编写一个程序,计算投资值在给定利率以及给定年数下的未来值。
*/
importjava.awt.Dimension;
importjava.awt.GridLayout;
importjava.awt.Toolkit;
importjavax.swing.JButton;
importjavax.swing.JFrame;
importjavax.swing.JLabel;
importjavax.swing.JTextField;
投资计算器"
//显示面板