




已阅读5页,还剩11页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2、编写程序将用户输入的一个0100之间的分数,将其转化成15的5分计方法。90100: 58090: 47080: 36070: 2其他: 1import java.util.Scanner;public class ScoreClass public static void main(String args) Scanner s=new Scanner(System.in);/如何接收一个值System.out.print(input a int(0-100):);int score=s.nextInt(),n=-1;if(score100)/如何来分等级System.out.println(Error);else if(score=90)n=5;else if(score=80)n=4;else if(score=70)n=3;else if(score=60)n=2;else if(score=0)n=1;elseSystem.out.println(Error);if(n!=-1)System.out.println(n=+n);3、使用Java.lang.Math类,生成100个099之间的随机数(整数),找出它们之中的最大者及最小者,并统计大于50的整数个数 public class MaxMin public static void main(String args) double p,temp,max=-1,min=1000;int i,j=0;for(i=0;imax)max=temp;if(temp=50)j+;System.out.println(max=+max);System.out.println(min=+min);System.out.println(total=+j);1、编程实现矩形类Rectangle,Rectangle拥有私有属性长(length)和宽(width),为Rectangle类提供至少两种构造方法,同时提供计算矩形周长(perimeter())和面积(area())的方法。使用两种构造方法,至少各创建一个矩形对象实例,并分别计算两个矩形的周长和面积。public class Rectangle private double width;private double length;public Rectangle()this.width=5;this.length=6;public Rectangle(double w,double l)this.width=w;this.length=l;public double area()/求面积return this.width*this.length;public double perimeter()/求周长return 2*(this.width+this.length);public static void main(String args) Rectangle r1=new Rectangle();System.out.println(r1的周长:+r1.perimeter();System.out.println(r1的面积:+r1.area();System.out.println();Rectangle r2=new Rectangle(10,20);System.out.println(r2的周长:+r2.perimeter();System.out.println(r2的面积:+r2.area();public double getWidth() return width;public void setWidth(double width) this.width = width;public double getLength() return length;public void setLength(double length) this.length = length;2、使用矩形类InterRectangle,编程统计若干块矩形土地的相关信息。由用户输入每块土地数目以及每块土地的长与宽,统计出所有土的面积和周长并显示出来。import javax.swing.JOptionPane;public class InterRectangle private double width;private double length;public InterRectangle()this.width=5;this.length=6;public InterRectangle(double w,double l)this.width=w;this.length=l;public double area()/求面积return this.width*this.length;public double perimeter()/求周长return 2*(this.width+this.length);public static void main(String args) String strNo=JOptionPane.showInputDialog(null,请输入土地块数,输入对话框,JOptionPane.INFORMATION_MESSAGE);double total=Double.parseDouble(strNo); /得到要统计的土地块数String strW=null,strL=null;InterRectangle ir=null;double w,l;double totalArea=0,totalPer=0;for(int i=1;i=total;i+)strW=JOptionPane.showInputDialog(null,请输入第+i+块土地的宽度(米),输入对话框,JOptionPane.INFORMATION_MESSAGE);strL=JOptionPane.showInputDialog(null,请输入第+i+块土地的长度(米),输入对话框,JOptionPane.INFORMATION_MESSAGE);w=Double.parseDouble(strW);/得到宽度l=Double.parseDouble(strL); /得到长度ir=new InterRectangle(w,l); /根据不同的长宽得到不同的矩形对象totalArea=totalArea+ir.area();/求总面积totalPer=totalPer+ir.perimeter(); /求总周长System.out.println(总共有+total+块土地n土地总面积为:+totalArea+平米n土地总周长为:+totalPer+米);3、为第一步实验中定义的矩形类Rectangle派生一个子类:正方体类Cube。若正方体类的操作同样是求底面周长和面积,同时要求求出长方体体积,则这个子类除了从父类那里继承来的方法之外,还需要做哪些修改。编程检查、运行所编写的正方体类。使用两种构造方法,至少各创建一个正方体对象实例,并分别计算两个正方体的底面周长、底面面积和体积。public class Cube extends Rectanglepublic Cube()super(10,10);public Cube(double l)super(l,l);public double area()/求面积return super.area();public double perimeter()/求周长return super.perimeter();public double getCube()/求tiojreturn super.area()*super.getWidth();public static void main(String args)Cube c=new Cube();System.out.println(c底面周长:+c.perimeter();System.out.println(c底面面积:+c.area();System.out.println(c体积:+c.getCube();System.out.println(n);Cube c1=new Cube(5);System.out.println(c1底面周长:+c1.perimeter();System.out.println(c1底面面积:+c1.area();System.out.println(c1体积:+c1.getCube();1、Point类描述“点”类,拥有两个成员变量x和y(分别代表点的横坐标和纵坐标),给Point两个自定义的构造方法。Circle类描述“圆”类,是Point类的一个子类,并拥有一个成员变量radius(代表圆的半径),给Circle两个自定义的构造方法。分别覆盖每个类中的toString()方法,并在构造方法中借助toString()方法显示Point或Circle各自的基本描述信息。在CircleTest中,分别至少调用Circle的两个构造方法各一次,构造两个不同的圆,并查看显示信息。public class Point private double x;private double y;public Point()this(0,0);public Point(double x,double y)this.x=x;this.y=y;System.out.println(Point constructor:+this.toString(); /注意,本例中在主方法中,当调用此处时是子类对象,所以用的是子类的toString()方法public String toString()return +this.x+,+this.y+;public class Circle extends Pointprivate double radius;public Circle()this(10,0,0);public Circle(double radius,double x,double y)super(x,y);this.radius=radius;System.out.println(Circle constructor:+this.toString();public String toString()return Center=+super.toString()+radius=+this.radius;public class CircleTest public static void main(String args) Circle cir1,cir2;System.out.println(第一个圆的信息:);cir1=new Circle();System.out.println(第二个圆的信息:);cir2=new Circle(5,10,10);2、接口Alarm(报警)拥有抽象方法void alarm(),接口Guard(防盗)用有抽象方法void guard()和防盗年限10年,抽象类Door拥有抽象方法void open()和void close(),AlarmGuardDoor类继承了类Guard和实现了接口Alarm,在类InterfaceDemo中完成类AlarmGuardDoor的实例化,并分别调用AlarmGuardDoor类中的所有方法查看输出效果。public interface Alarm void alarm();public interface Guard void guard();public abstract class Door abstract void open();abstract void close();public class AlarmGuardDoor extends Door implements Guard,Alarmpublic void alarm() System.out.println(刮风下雨收衣服了);public void guard() System.out.println(防盗效果好);void open() System.out.println(芝麻开门);void close() System.out.println(芝麻关门);public class InterfaceDemo public static void main(String args) AlarmGuardDoor agd=new AlarmGuardDoor();agd.open();agd.alarm();agd.guard();agd.close();3、定义抽象类Fruit,拥有抽象方法public void show()和成员protected String brand,定义Apple,Banane和Pear三个类,分别继承了抽象类Fruit,实现了方法show()以及输出了水果的品牌(brand),在类DynamicBind中定义Fruit的一个引用,分别赋予三个子类对象,并查看每次show()方法的区别。public abstract class Fruit protected String brand;public abstract void show();public class Apple extends Fruitpublic Apple()this(黄金苹果);public Apple(String brand)this.brand=brand;public void show() System.out.println(Apple:+brand);public class Pear extends Fruitpublic Pear()this(水晶梨);public Pear(String brand)this.brand=brand;public void show() System.out.println(Pear:+brand);public class Banane extends Fruitpublic Banane()this(千层蕉);public Banane(String brand)this.brand=brand;public void show() System.out.println(Banane:+brand);public class DynamicBind public static void main(String args) Fruit f=new Apple(红富士苹果);f.show();f=new Pear(香梨);f.show();f=new Banane(仙人蕉);f.show();1、类SimpleException中有方法public static double Division(double x,double y) if(y=0)throw new IllegalArgumentException(分母不能为0); /手动抛出异常,对于双精度而言,除数为0可以得到无穷大的值,本不会报异常错误,这里手动强制报return x/y; 主方法中有代码: double a=Double.parseDouble(args0);double b=Double.parseDouble(args1);System.out.println(Division(a,b);借助异常机制获所有可能出现的异常,并提示相关异常的出错信息。最后,无论程序如何结束,保证程序都能输出语句“游戏结束!”public class SimpleException public static double Division(double x,double y) if(y=0)throw new IllegalArgumentException(分母不能为); /手动抛出异常return x/y;public static void main(String args) trydouble a=Double.parseDouble(args0);double b=Double.parseDouble(args1);System.out.println(Division(a,b);catch(ArrayIndexOutOfBoundsException e)System.out.println(arg0和args1需要参数); catch(NumberFormatException e)System.out.println(数据格式必须为double类型);catch(IllegalArgumentException e)System.out.println(非法数据: +e.toString();catch(Exception e)System.out.println(e+ end);finallySystem.out.println(程序结束!);2、自定义日期类异常,1)、定义一个程序DateExceptionTest,该程序主方法中:a)、采用Scanner类的对象来接收三个整数b)、对于非整数数据,能采用异常进行验证c)、用三个整数借助自定义类DateException构建出一个日期对象,并以“yyyy-mm-dd”的形式输出该日期对象。d)、使用类2)同时要求,自定义类DateException继承自Exceptiona)、拥有两个构造方法,分别是DateException(String s)、public DateException(int year,int month,int day) throws DateException和一个成员方法Date getDate()。b)、第二个构造方法能接收三个整数,拥有验证三个数据是否合法的能力,验证时,对于非法数据格式,采用抛出异常DateException,抛出异常时,携带错误提示信息。c)、DateException类中,借助方法getDate()获得该组合的日期对象import java.text.ParseException;import java.text.SimpleDateFormat; import java.util.Date; import java.util.InputMismatchException;import java.util.Scanner;public class DateException extends Exceptionprivate int year;private int month;private int day;public DateException(String s)super(s);public DateException(int year,int month,int day) throws DateExceptionsuper(构造日期);if(year2100)throw new DateException(年份必须在到之间); /验证年份是否合法if(month31)throw new DateException(月份必须在到之间); /验证月份是否合法if(day31)throw new DateException(日期必须在到之间); /验证日是否合法/在满足以上条件下,进一步验证特殊情况switch(month)case 2:if(year%4=0&year%100!=0)|year%400=0)if(day=30)throw new DateException(该月没有号); /闰年月没有号else if(day=29)throw new DateException(该月没有号); /非闰年月没有号break;case 4:case 6:case 9:case 11:if(day=31)throw new DateException(该月不能出现天);break;this.year=year;this.month=month;this.day=day;public Date getDate()throws ParseExceptionString strDate=this.year+-+this.month+-+this.day;SimpleDateFormat sdf=new SimpleDateFormat(yyyy-mm-dd); Date date = sdf.parse(strDate); /根据提供参数构造一个日期对象return date;import java.text.ParseException;import java.text.SimpleDateFormat; import java.util.Date; import java.util.InputMismatchException;import java.util.Scanner;public class DateExceptionTest public static void main(String args) DateException de;Date newdate;Scanner s=new Scanner(System.in);int year,month,day;trySystem.out.println(请输入年份(1900到之间的整数):);year=s.nextInt();System.out.println(请输入月份(1到之间的整数):);month=s.nextInt();System.out.println(请输入日期(1到之间的整数):);day=s.nextInt();de=new DateException(year,month,day);newdate=de.getDate();SimpleDateFormat sdf1=new SimpleDateFormat(yyyy-mm-dd);System.out.println(sdf1.format(newdate); /格式化输出catch(InputMismatchException e) /处理Scanner对象接收到非整形数据处理System.out.println(e.toString()+:请输入整数);catch(DateException e)System.out.println(e.toString();catch(ParseException e)System.out.println(e.toString()+:数据错误,无法转换成日期);catch(Exception e)e.printStackTrace();1、编写代码实现登录界面。1)、简单登录界面框类SimpleLogin,含有两个标签lblName、lblPassword,标签信息分别对应的是“用户名:”和“密码”,一个文本域jtfName用来接收用户名,一个密码域jtfpassword用来接收密码,两个按钮btnOk、btnCancel,按钮信息分别是“登录”和“取消”。2)、登录按钮中实现验证“用户名”和“密码”的信息,本题中用户名和密码固定分别为“aa”和“123”。取消按钮中实现退出登录框功能。import java.awt.BorderLayout;import java.awt.Container;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.*;public class SimpleLogin extends JFrame implements ActionListenerprivate JLabel lblName,lblPassword;private JButton btnOk,btnCancel;private JTextField jtfName;private JPasswordField jtfpassword;private JPanel jpbtn,jpMain;public SimpleLogin()super(登录);/按钮部分界面jpbtn=new JPanel();btnOk=new JButton(确定);btnCancel=new JButton(取消);jpbtn.add(btnOk);jpbtn.add(btnCancel);/登录信息部分界面jpMain=new JPanel();lblName=new JLabel(用户名:);lblPassword=new JLabel(密 码:);jtfName=new JTextField(15);jtfpassword=new JPasswordField(15);jpMain.add(lblName);jpMain.add(jtfName);jpMain.add(lblPassword);jpMain.add(jtfpassword);btnOk.addActionListener(this);btnCancel.addActionListener(this);Container con=this.getContentPane();con.add(jpbtn,BorderLayout.SOUTH);con.add(jpMain,BorderLayout.CENTER);this.setSize(250,150);this.setLocation(500,300);this.setResizable(false);this.setVisible(true);this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);public static void main(String args) SimpleLogin sl=new SimpleLogin();public void actionPerformed(ActionEvent e) if(e.getSource()=btnOk)if(jtfName.getText().equals(aa) & new String(jtfpassword.getPassword().equals(123)this.dispose();JOptionPane.showMessageDialog(null,登录成功);elseJOptionPane.showMessageDialog(null,登录失败);jtfName.setText();jtfpassword.setText();if(e.getSource()=btnCancel)System.exit(0);2、编写实现程序,在窗口North上布置三个按钮,并完成按钮点击事件,点击三个按钮时,分别输出填充颜色的三角形,矩形和椭圆。1、分别定义三个面板类Triangle、Rectangles和Ellipse,分别实现绘图三角形、矩形和椭圆形;2、框架类PaintFigure定义两个面板buttons和jMainPanel,分别装载控制按钮和显示图形;3、面板buttons装载PaintFigure的“北部”,在中有三个按钮btnTriangle、btnRectangle和btnEllipse,点击三个按钮分别能在是面板jMainPanel上绘制出三角形、矩形和椭圆形;4、面板jMainPanel装载在PaintFigure的“中部”,其布局为三行三列的网格布局,当点击面板buttons中按钮时,将在面板jMainPanel追加显示图形,最多可以显示九个图形。import java.awt.*;import java.awt.event.*;import javax.swing.*;public class PaintFigure extends JFrame implements ActionListenerprivate JPanel jpMain,jpbtn;private JButton jbtnT;private JLabel jlbl;private int i=0;private final int MaxPanel=16;class MouseHandler extends MouseAdapter /鼠标进入输出三角形public void mouseEntered(MouseEvent e) if(iMaxPanel)jpMain.add(new Triangle();jpMain.repaint();jpMain.validate();i+;public void actionPerformed(ActionEvent e) /点击按钮输出三角形if(e.getSource()=jbtnT)if(iMaxPanel)jpMain.add(new Triangle();jpMain.repaint();jpMain.validate();i+;public PaintFigure()jpMain=new JPanel();jpbtn=new JPanel();jbtnT=new JButton(三角形);jlbl=new JLabel(三角形);jpMain.setLayout(new GridLayout(4,4);jpbtn.add(jbtnT);jpbtn.add(jlbl);jbtnT.addActionListener(this);/添加事件jlbl.addMouseListener(new MouseHandler(); /添加事件Container con=this.getContentPane();con.add(jpMain,BorderLayout.CENTER);con.add(jpbtn,BorderLayout.NORTH);this.setVisible(true);this.setBounds(200,200,500,400);this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);public static void main(String args)PaintFigure pf=new PaintFigure();import java.awt.Color;import java.awt.Graphics;import java.awt.Polygon;import javax.swing.JPanel;public class Triangle extends JPanelprivate int height;private int width;public void paintComponent(Graphics g)super.paintComponent(g);height=this.getSize().height;width=this.getSize().width;Polygon p=new Polygon(); /定义一个多边形,改多边形具体有几条边,由下面添加的点p.addPoint(0, height);/定义多边形的顶点坐标p.addPoint(width/2, 0);p.addPoint(width, height);g.setColor(Color.red);/绘图的颜色g.fillPolygon(p);/依据定义好的多边形对象p,绘制多边形import java.awt.*;import java.awt.event.*;import javax.swing.*;class Temperature extends JFrame/主面板Controler demo;public
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 新解读《CB-T 3858 - 1999起锚机和起锚绞盘性能参数》新解读
- 华师大版七下(2024版)8.1.1认识三角形第2课时 课件
- Brand KPIs for health insurance:Zurich Santander in Brazil-英文培训课件2025.4
- 汽车传感器与检测技术电子教案:湿度传感器
- 景观绿化工程施工组织设计
- 乐亭金沙岛假日酒店可研报告78p
- 中考地理复习教案第21课时 北京市、珠三角、长三角、长株潭城市群
- 从化市宣传周活动方案
- 代步竞走活动方案
- 代表教育募捐活动方案
- 大象版科学一年级下册《水的特征》(省一等奖)课件
- 农夫山泉营销策划方案
- 施工图设计文件审查合格书(市政基础设施工程)
- 13价肺炎球菌多糖结合疫苗预防接种知情同意书170531
- 幼儿园绘本故事:《小熊不刷牙》 课件
- 门窗设备操作规程
- 韩茂莉中国历史地理讲义(2009年版)
- DIN32711轴环连接多边形轮廓P3G第2部分计算和定尺寸
- 叉车日常维护保养检查记录表
- 空白个人简历表格
- 吹瓶机工艺培训资料-sidel
评论
0/150
提交评论