1、四五总分分数 2011-2012(1)的“Java与网络程序设计”课程为专业选修课,鉴于课程特点,“Java与网络程序设计”课程采用开卷实践考核方式,选修此课程的同学应于第17教学周完成实践考核题目,并上交程序成品、完成答辩。实践考核题目独立完成Project1、Project2、Project3和Project4四个项目。Project 1(1)按照如下UML图要求实现GeometricObject类和Circle类:(2)修改Circle类,使其实现Comparable接口并覆盖Object类的equals方法,其中实现Comparable接口的Circle类能根据radius数值比较大小
2、,覆盖的equals方法能根据radius数值判定Circle对象是否相等;(3)编写测试类,创建半径为5和10的Circle对象,显示equals方法和compareTo方法调用结果。import java.util.Date;/编写测试类,创建半径为5和10的Circle对象,显示equals方法和compareTo方法调用结果。public class Test public static void main(String args) Circle c1=new Circle(5); Circle c2=new Circle(10); System.out.println(c1.equa
3、ls(c2); System.out.println(pareTo(c2); class GeometricObject private String color; private boolean filled; private Date dateCreated; GeometricObject() GeometricObject(String color,boolean filled) this.color=color; this.filled=filled; public String getColor() return color; public void setColor(String
4、 color) this.color = color; public boolean isFilled() return filled; public void setFilled(boolean filled) this.filled = filled; public Date getDateCreated() return dateCreated; public String toString() /? public double getArea() return 0; / public double getPerimeter() /class Circle extends Geometr
5、icObject implements Comparable private double radius; Circle() Circle(double radius) this.radius=radius; Circle(double radius,String color,boolean filled) this.setColor(color); this.setFilled(filled); public double getRadius() return radius; public void setRadius(double radius) this.radius = radius;
6、 public double getDiameter() return this.radius*2; /直径 /实现Comparable接口的Circle类能根据radius数值比较大小 public int compareTo(Object o) if(getRadius()(Circle)o).getRadius() return 1; else if(getRadius() return -1; else return 0; /覆盖的equals方法能根据radius数值判定Circle对象是否相等; public boolean equals(Circle c) if(getRadiu
7、s()=c.getRadius() return true; return false;Project 2:编写程序显示一个饼图,使用饼图显示作业、平时测验、期中考试和期末考试占总成绩的百分比。假设作业占20%用红色显示,平时测验占10%用蓝色显示,期中考试占30%用绿色表示,期末考试占40%用橙色表示。import javax.swing .*;import java.awt.*;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.util.Scanner;public clas
8、s Test ZiFrame frame=new ZiFrame(); frame.setTitle(饼图); /面板标题 frame.setSize(300,200); /面板大小 frame.setResizable(false); /不能改变面板大小 frame.setLocationRelativeTo(null); /显示器上居中显示 frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); /关闭操作 frame.setVisible(true);class ZiFrame extends JFrame ZiFrame() setL
9、ayout(new BorderLayout(); add(new NewJPanel(),BorderLayout.CENTER);class NewJPanel extends JPanel protected void paintComponent(Graphics g) super.paintComponent(g); int xCenter=getWidth()/2; int yCenter=getHeight()/2; int radius=(int)(Math.min(getWidth(), getHeight()*0.4); int x=xCenter-radius; int
10、y=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.setCo
11、lor(Color.black); g.drawString(Projects-20%, 3*radius,40);Quizzes-10%, 2*radius,10);Midterms-40%, 0,radius);Final-40%, 2*radius,140);Project 3:编写一个程序,计算投资值在给定利率以及给定年数下的未来值。计算的公式如下所示:使用文本域显示利率、投资总额和年数。当用户点击Calculate按钮时,在文本域显示未来的总额。/* 编写一个程序,计算投资值在给定利率以及给定年数下的未来值。 */import java.awt.Dimension;import java.awt.GridLayout;import java.awt.Toolkit;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JTextField;投资计算器 /显示面板
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1