2012江西财经大学java笔试A
- 格式:doc
- 大小:108.00 KB
- 文档页数:11
西南财经大学本科期末考试试卷课程名称:面向对象程序设计(Java)担任教师:王之怡等考试学期:2012 -2013 学年第 1 学期专业:学号:年级:姓名:考试时间:2012 年月日(星期)午:-- :出题教师必填:1、考试类型:闭卷[ ] 开卷[ √](页纸开卷)2、本套试题共五道大题,共页,完卷时间120分钟。
3、考试用品中除纸、笔、尺子外,可另带的用具有:计算器[ ] 字典[ ] 教材等(请在下划线上填上具体数字或内容,所选[ ]内打钩)考生注意事项:1、出示学生证或身份证于桌面左上角,以备监考教师查验。
2、拿到试卷后清点并检查试卷页数,如有重页、页数不足、空白页及刷模糊等举手向监考教师示意调换试卷。
3、做题前请先将专业、年级、学号、姓名填写完整。
4、考生不得携带任何通讯工具进入考场。
5、严格遵守考场纪律。
一、请分别写出下面程序的运行结果,将答案添在每道题后的空格处(25分)1.请写出下面程序的运行结果(5分)public class Test{public static void main (String args[ ] ){int x , y ;byte b = 6;float z = 1.2345f ;double w = -0.2;boolean flag;x = 12 ;y = 300;flag=x>y;System.out.println("x>y=="+flag);flag=z>w;System.out.println("z>w=="+flag);}}结果:________________2.请写出下面程序的运行结果(5分)public class Test{public static void main (String args[ ] ){int sum=0,i;for(i=1;i<=4;i++){switch(i){case 1:sum+=2;break;case 2:sum+=4;break;case 3:sum+=8;break;case 4:sum+=16;}}System.out.println("sum="+sum);}}结果:_____________________________3.下面有2段程序,请补充空格中的语句,使程序能正确编译和执行。
全国计算机等级考试二级JAVA真题2012年3月(总分:100.00,做题时间:90分钟)一、选择题(每小题2分,共70分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的。
请将正确选项填涂在答题卡相应位置上,答在试卷上不得分。
(总题数:35,分数:70.00)1.下列关于栈序正确的是(分数:2.00)A.栈顶元素最先能被删除√B.栈顶元素最后才能被删除C.栈底元素永远不能被删除D.以上三种说法都不对解析:2.下列叙述中正确的是(分数:2.00)A.有一个以上根结点的数据结构不一定是非线性结构B.只有一个根结点的数据结构不一定是线性结构√C.循环链表是非线性结构D.双向链表是非线性结构解析:3.某二叉树共有7个结点,其中叶子结点只有1个,则该二叉树的深度为(假设根结点在第1层)(分数:2.00)A.3B.4C.6D.7 √解析:4.在软件开发中,需求分析阶段产生的主要文档是(分数:2.00)A.软件集成测试计划B.软件详细设计说明书C.用户手册D.软件需求规格说明书√解析:5.结构化程序所要求的基本结构不包括(分数:2.00)A.顺序结构B.GOTO跳转√C.选择(分支)结构D.重复(循环)结构解析:6.下面描述中错误的是(分数:2.00)A.系统总体结构图支持软件系统的详细设计B.软件设计是将软件需求转换为软件表示的过程√C.数据结构与数据库设计是软件设计的任务之一D.PAD图是软件详细设计的表示工具解析:7.负责数据库中查询操作的数据库语言是(分数:2.00)A.数据定义语言B.数据管理语言C.数据操纵语言√D.数据控制语言解析:8.一个教师可讲授多问课程,一门课程可由多个教师讲授,则实体教师和课程间的联系是(分数:2.00)A.1:1联系B.1:m联系C.m:1联系D.m:n联系√解析:9.有三个关系R、S和T如下:R和S得到关系T的操作是(分数:2.00)A.自然连接√B.交C.除D.并解析:10.定义无符号整数类为UInt,下面可以作为类UInt实例化值的是(分数:2.00)A.-369B.369 √C.0.369D.整数集合{1,2,3,4,5}解析:11.下列关于面向对象的论述中,正确的是(分数:2.00)A.面向对象是指以对象为中心,分析、设计和实现应用程序的机制√B.面向对象是指以功能为中心,分析、设计和实现应用程序的机制C.面向对象仅适用于程序设计阶段D.面向对象是一种程序设计语言解析:12.语句”Hello”.equals(“hello”);的正确执行结果是(分数:2.00)A.trueB.false √C.0D.1解析:13.下列关于Java源程序结构的论述中,正确是(分数:2.00)A.一个文件包含的import语句最多1个B.一个文件包含的public类最多1个√C.一个文件包含的接口定义最多1个D.一个文件包含的类定义最多1个解析:14.下列不属于Java关键字的是(分数:2.00)A.thisB.superC.finallyD.NULL √解析:15.下列代码的执行结果是 public class Test { public static void main(String[] args) { int[] x={0,1,2,3}; for(int i=0;i(分数:2.00)A.error1B.error2C.error1error2 √D.2error2解析:16.下列整数的定义中,错误的是(分数:2.00)A.int f=3.14; √B.int a=012;C.int i=189;D.int d-0x123;解析:17.要得到某目录下的所有文件名,在下列代码的下划线处应填入的内容是(两个下划线的内容相同)________pathname = new________(args[0]); String[] filename = pathname.list();(分数:2.00)A.FileInputStreamB.FileOutputStreamC.File √D.RandomAccessFile解析:18.在下列代码的下划线处应填入的内容是 public class FirstSample { public static voidmain(________args[]) { System.out.println("你好!"); } } }(分数:2.00)A.staffB.doubleC.intD.String √解析:19.Object类中的方法public int hashCode(),在其子类覆盖该方法时,其方法修饰符可以是(分数:2.00)A.protectedB.public √C.privateD.缺省解析:20.下面代码中的内部类名是 import java.awt*; import javax.swing.*; class TalkingClock { public static void main(int interval,final boolean beep) { ActionListener listener = new ActionListener(){ public void actionPerformed(ActionEvent event){ ________ } } Timer t = new Timer(interval,listener); t.start(); } }(分数:2.00)A.TimerB.ActionListenerC.listenerD.匿名√解析:21.已知zipname是一个压缩文件名,则zipname在下列代码中出现的正确位置是ZipInPutStream zin =new ZipInPutStream(new FileInPutStream(①)); ZipEnatry entry; While((entry =zin.getNextEntry(②))!=null{ fileCombo.addItem(entry.getName(③)); zin.closeEntry(④); } Zin.close();(分数:2.00)A.①√B.②C.③D.④解析:22.下列代码的执行结果是 int numbers[]=new int[6]; for(int i=1;i(分数:2.00)A.0 1 2 3 4 5B.1 2 3 4 5 6C.0 1 2 3 4 √D.1 2 3 4 5解析:23.Java API中支持线程的类或接口是Ⅰng.Thread Ⅱng.RunnableⅢng.ThreadGroup Ⅳ.java.io.Serializable(分数:2.00)A.Ⅰ,ⅡB.Ⅰ,Ⅱ,ⅢC.Ⅰ,Ⅱ,ⅣD.Ⅰ,Ⅱ,Ⅲ,Ⅳ√解析:24.下列关于Test类的定义中,正确的是(分数:2.00)A.class Test implements Runnable {public void run(){}public void someMethod(){}} √B.class Test implements Runnable {public void run();}C.class Test implements Runnable {public void someMethod();}D.class Test implements Runnable {public void someMethod(){}}解析:25.下列方法被调用后,一定使调用线程改变当前状态的是(分数:2.00)A.notify()B.yield() √C.sleep()D.isAlive()解析:26.在堆栈类SharedStack的定义中,为了保证堆栈在并发操作中数据的正确性,应在下划线处填入的修饰符是(两个下划线的填写内容相同) public class SharedStack { ________int idx=0; ________char[] data= new char[10]; public synchronized void push(char c) {________} public synchronized void pop(){________} }(分数:2.00)A.public √B.不使用修饰符C.privateD.protected解析:27.下列代码编译或执行结果的描述中,正确的是 class Test{ public static void main(Stringargs[]){ TestThread pm1 = new TestThread("One"); pm1.start(); TestThread pm2 = new TestThread("Two"); pm2.start(); } } class TestThread extends Thread{ private String sTname=""; TestThread(String s){ sTname = s; } public void run(){ for(int i=0;i(分数:2.00)A.不能通过编译,TestThread类中不能定义变量和构造方法B.输出 One One Two TwoC.输出 Two One One TwoD.选项B或C都有可能出现√解析:28.下列关于Applet的叙述中,正确的是(分数:2.00)A.为了使Applet在浏览器中运行,需要在HTML文件中嵌入相应的Applet类√B.Applet不能使用从外部接收参数C.Applet不能使用javac 命令进行编译D.java Application 与Applet都必须包含main()方法解析:29.下列代码的下划线处应填入的方法名是 import java.applet.*; import java.awt.*; public class Hello extends Applet { public void ________(Graphics g){ g.drawString("How are you!", 10, 10); } } (分数:2.00)A.repaintB.printlnC.paint √D.show解析:30.下列变量的定义中,错误的是(分数:2.00)A.int x=3;B.float f;d; √C.String s=”Hello!”D.boolean b=true;解析:31.下列代码的执行结果是 int length = "Hello".length(); System.out.println(length);(分数:2.00)A.5 √B.2C.10D.6解析:32.下列代码的编译或执行结果是public class MyVal { public static void main(String[] args) { MyVal m = new MyVal(); m.aMethod(); } public void aMethod(){ boolean [] b = new Boolean [5]; System.out.println(b[0]); } }(分数:2.00)A.1B.nullC.0D.编译错误√解析:33.若变量a是String类型的数据,那么表达式(a+a)的类型是(分数:2.00)A.charB.String √C.intD.long解析:ponent类中用于刷新组件的方法是(分数:2.00)A.getFontB.getNameC.update √D.paint解析:35.鼠标在窗口中移动时,产生的事件是(分数:2.00)A.ActionEventB.PrintEventC.KeyEventD.MouseEvent √解析:二、填空题(每空2分,共30分) (总题数:15,分数:30.00)36.有序线性表能进行二分查找的前提是该线性表必须是 1存储的。
适用专业:答案请写在答题卡上,否则不得分1.下列标识符中合法的是()。
A. 8_IDB.-nameC.hello#D._hello1232.x的初始值是1,经过逻辑比较运算((y=1)==0)&&((x=6)==6)和((y=1)==1)&&((x=6)==6)后,x的值分别为()。
A.6,1B.6,2C.1,6D.6,63.下列属于类的有()。
A.学生王江东B.张老师C.小李的汽车D.学校4.定义School类时用到的语句是()。
A.School school=new school(); B. School school=null;=”新华中学”;D.package与import语句5.在一个Java文件中,使用import、class和package的正确顺序是()、import、class B. import、package、classC. class、package、importD. package、class 、import6.下列关于封装说法正确的是()。
A. 类的每个成员变量仅可以用private访问修饰符B.每个成员变量必须提供getter()和setter()方法C.类外对本类的成员变量的访问必须通过getter()和setter()方法D.封装就是通过private关键字限制对类的成员变量或成员方法的访问7.下列对Java中的继承描述,说法错误的是()A.子类至少有一个基类B.子类可以作为另一个子类的基类C.子类可以通过this关键字来访问父类的私有属性D.子类继承父类的方法访问权限保持不变8.面向对象方法的多态性是指()A.一个对象可以是有多个其他对象组合而成的B.一个对象在不同的运行环境中可以有不同的变体C.拥有相同父类或接口的不同对象可以以适合自身的方式处理同一件事D.一个类可以派生出多个子类9.下面代码片段创建()个对象int a =10;String b =”abc”;String c =new String(”abc”);MyTest test =new MyTest();A. 4B. 3C. 2D. 110.下列语句中,是用来捕获和处理异常的。
4.5 为本章4.7节的大学选课系统安排期末考试考场,供学生和教师查询考试信息。
要求如下:(1) 一门课程的所有开课班应安排在相同时间进行考试,不同课程的开课班可以安排在相同或不同的时间进行考试;(2) 一个开课班的学生可能安排在多个考场参加考试,一个考场也可以包含同一门课程的多个开课班的学生,但不允许将选修不同课程的学生安排在同一考场考试(该语义也可以进行修改);(3) 一个考场根据参加考试的学生人数安排2至4名监考老师,其中指定一名老师为主监考老师;(4) 一个学生选修的多门课程不能安排在同一时间进行考试;(5) 一个老师不能安排在同一时间参加多个考场的监考;(6) 一个教室在同一时间不能安排多场考试;(7) 安排在同一考场参加考试的学生人数不能超过该教室的考试容量(通常情况下,一个教室的考试容量不会超过其上课容量的一半)。
请你在对教务处进行调研的基础上进行数据库设计,要求:(1) 定义必要的实体集及其属性。
(2) 设计该考试安排的E-R模型,E-R图反映实体集之间的联系和联系属性,需标出联系的映射基数;并通过数据字典定义E-R图中的每一个实体集的属性。
(3) 将E-R模型转化为关系数据库模式,并指出每一个关系模式的主码和外码。
(1)实体集即属性学生:Student:studentNo、studentName、sex、birthday老师:teacher:teacherNo、teacherName课程:course: courseNo、courseName开课班:class: classNo、term、number教室(考场):room:roomNo、contain时间安排:examtime:examTime(2)E-R图数据字典:3(3)关系数据库模式:1、由实体集转化而来的关系模式Sudent(studentNo、studentName、sex、address)teacher(teacherNo、teacherName、roomNo)course( courseNo、courseName)class(courseNo、classNo、term、number)room(roomNo、containNumber、examTime)2、由联系集转化而来的关系模式A、标志联系集“分配”不必生成关系模式。
Java程序设计_江西财经大学2中国大学mooc课后章节答案期末考试题库2023年1.下面哪个是编译 Java 程序的命令________。
答案:javac2.如下哪个是 Java 中的正确标识符_________ 。
答案:width3.编译 Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为_________。
答案:.class4.设 i 为 1,执行表达式 i *= 2 后 i 为________。
答案:25.从键盘获取浮点数成绩,正确选项是________。
public class InputScore{ public static void main (String[] args) { Scanner input = new Scanner(System.in) ; double score= input.__________; System. out.println(score); } }答案:nextDouble()6.以下代码段执行后的输出结果为_________。
int x =-3; int y =-10; System.out.println(y%x);答案:-17.下面代码执行完毕后输出是________。
double area = 3.5; System.out.print("area"); System .out.print(area);答案:area3.58.以下那项布尔表达式是不合法的________。
答案:(true) && (3 => 4)9.分析下面代码,下列说法正确的是________。
int count = 0; while (count < 100) { // Point A System.out.println("Welcome to Java!"); count++; // PointB } // Point C答案:count < 100 在 Point A 处一直为真;10.分析下面代码, 当调用nPrint(“a”, 4)方法时会出现什么结果? static void nPrint(String message, int n) { while (n > 0 ) { System.out.print(message); n--; } }答案:aaaa11.Java 语言采用面向对象的思想编程,具有跨平台、分布式、多线程等优点。
学号: 姓名:年级: 专业:考号:A.method2()4.创建一个标识有“关闭”标签的语句是( )。
A、TextField b = new TextField(“关闭”);B、Label b = new Label(“关闭”);C、Checkbox b = new Checkbox(“关闭”);D、Button b = new Button(“关闭”);5.对于子类的构造函数说明,下列叙述中错误的是()。
A、子类可以继承父类的构造函数。
B、子类中调用父类构造函数不可以直接书写父类构造函数,而应该用super();。
C、用new创建子类的对象时,将先执行继承自父类的无参构造函数,然后再执行自己的构造函数。
D、子类的构造函数中不可以调用其他函数。
6.下列哪个选项是错误的。
()A、一个文件中只能有一个public class。
B、一个文件中可以有多个类。
C、一个类中可以有两个main方法。
D、main方法必须是public的。
7.类ABC定义如下:1.public class ABC{2.public double max( double a, double b) { }3.4.}将以下哪个方法插入行3是不合法的。
()A、public float max(float a, float b, float c){ }B、public double max (double c, double d){ }C、public float max(float a, float b){ }D、private int max(int a, int b, int c){ }8.以下哪项是错误的()。
A、JPanel中不能包含按钮。
B、Frame 中可以设置Panel。
C、Applet 中可以包含按钮。
D、Dialog 中不可以设置菜单条。
9.在Applet中,方法执行的顺序是? ()A、init(), start(), paint(),stop(),destroy().B、init(),paint(),start(),stop(),destroy().C、paint(),start(),stop(),destroy().D、init(), start(),stop(),destroy(),paint().10.以下哪个方法用于定义线程的执行体?()A、 start()B、init()C、run()D、synchronized()11.当使包含applet 程序的页面从最小化恢复时,以下选项中的哪个方法将被执行?()A、paint()B、start()C、destroy()D、stop()12. A 是抽象父类或接口,B ,C派生自A,或实现A,现在Java源代码中有如下声明:1. A a0=new A();2. A a1 =new B();3. A a2=new C();问以下哪个说法是正确的?()A、只有第1行不能通过编译B、第1、2行能通过编译,但第3行编译出错C、第1、2、3行能通过编译,但第2、3行运行时出错D、第1行、第2行和第3行的声明都是正确的13.以下哪个接口的定义是正确的?()A、interface B{ public abstract void print() { } ;}B、i nterface B{ static void print() ;}C、a bstract interface B extends A1, A2 //A1、A2为已定义的接口{private abstract void print();}D、interface B{ void print();}14.关于Socket通信编程,以下描述正确的是:( )A、客户端通过new ServerSocket()创建TCP连接对象B、客户端通过TCP连接对象调用accept()方法创建通信的Socket 对象C、客户端通过new Socket()方法创建通信的Socket对象D、服务器端通过new ServerSocket()创建通信的Socket对象15.关于数据库连接的程序,以下哪个语句的注释是错误的( )A、Class.forName(“com.mysql.jdbc.Driver”); //指定MySQL JDBC 驱动程序B、String url=” jdbc:mysql://localhost:3306/student”; //指定驱动程序与数据源的连接C、db.executeUpdate(sql); //用于返回查询结果D、while(rs.next())//用于遍历查询结果中的记录16.关于异常的编程,以下描述错误的是:( )A、在有除法存在的代码处,抛不抛出异常均可B、int i=Integer.parseInt(”123a”);将产生IDberFormatExceptionC、int a[]=null; a[0]=1; 将产生ArraylndexOutOfBoundsExceptionD、输入输出流编程中,读和写时都必须抛出IOException17.在main()方法中给出的字节数组,如果将其显示到控制台上,需要( )A. 标准输出流System.out.println()。
一、选择题(每题2分,共计40分)。
1.在Java语言中,int类型数据的长度是( C )A.1个字节B.2个字节C.4个字节D.8个字节2.在switch语句中,switch后面括号内的表达式的类型不能..是( B )A.byteB.longC.charD.int3.以下关于接口的叙述中,正确的是( D )A.所有的接口都是公共接口,可被所有的类和接口使用B.一个类通过使用关键字interface声明自己使用一个或多个接口C.接口中所有的变量都默认为public abstract属性D.接口体中不提供方法的实现4.以下代码段的输出结果是( A )String s="JavaWorld"; System.out.print(s.indexOf("a",4));A.-1B.OC.1D.45.以下不属于...AWT库中定义的类是( A )ponentB.ContainerC.ImagesD.Graphics6.鼠标单击列表中某个选项事件的相关接口是( B )A.ListActionListenerB.ListSelectionListenerC.ActionListenerD.SelectionListener7.Java语言规定,程序绘图区域的坐标原点位于整个区域的(A )A.左上角B.右上角C.左下角D.右下角8.以下关于线程互斥和同步的叙述中,正确的是( C )A.多线程互斥使用各自资源的程序段,在操作系统中称为临界段B.临界段的作用是使某线程能够使用其它线程的资源C.可以使用notify()方法通知等待线程结束等待D.线程的互斥和同步可以很好地解决死锁问题9.当用户关闭文件对话框时,有可能返回的整数常量是( B )A.JFileChooser.CLOSE_OPTIONB.JFileChooser.APPROVE_OPTIONC.JFileChooser.SAVE_OPTIOND.JFileChooser.OPEN_OPTION10.获取InetAddress对象的域名所用到的方法是( D )A.getByName()B.getHostAddress()C.getLocalHost()D.getHostName()二、填空题(每空2分,共计30分)。
第一类题目:1:public class exer {public static void main(String[] args) {int a=1+(int)(Math.random()*3000);boolean isprime=true;for(int k=2;k<=a/2;k++){if(a%k==0) isprime=false;break;}if(isprime) System.out.println(a+"是素数");else System.out.println(a+"不是素数");}}(2)public class exer {public static void main(String[] args) {for(int i=10000;i<=100000;i=i+10000){double sum=1;double e=1;for(int k=1;k<=i;k++){sum*=k;e+=1.0/sum;}System.out.println("当i的值为"+i+"时e的值为"+e);}}}(4)public class exer {public static void main(String[] args) { int[] a={1,4,7,9,12};for(int i=0;i<=2;i++){int temp;temp=a[i];a[i]=a[4-i];a[4-i]=temp;}for(int i=0;i<=4;i++){System.out.print(a[i]+" ");}}}第二类题目1:public class exer21 {public static void main(String[] args) { Triangle t=new Triangle(1,1.5,1);t.setcolor("yellow");t.setfilled(true);System.out.println(t.toString()+"\n周长为"+t.getPerimeter()+"\n 面积为"+t.getArea()+"\n颜色为"+t.getcolor()+"\n是否填充:"+t.getfilled());}}abstract class GeometricObject{protected String color;protected boolean filled;;abstract public double getArea();abstract public double getPerimeter();}class Triangle extends GeometricObject{private double side1;private double side2;private double side3;public Triangle(){side1=1;side2=1;side3=1;}public Triangle(double side1,double side2,double side3){ this.side1=side1;this.side2=side2;this.side3=side3;}public void setside1(double side1){this.side1=side1;}public double getside1(){return side1;}public void setside2(double side2){this.side2=side2;}public double getside2(){return side2;}public void setside3(double side3){this.side3=side3;}public double getside3(){return side3;}public void setcolor(String color){this.color=color;}public String getcolor(){return color;}public void setfilled(boolean filled){this.filled=filled;}public boolean getfilled(){return filled;}public double getArea() {double s=(side1+side2+side3)/2;double area=Math.sqrt(s*(s-side1)*(s-side2)*(s-side3));return area;}@Overridepublic double getPerimeter() {return side1+side2+side3;}public String toString(){return"三角形的三条边为:"+side1+"、 "+side2+"、 "+side3;}}2.3public class exer23 {public static void main(String[] args) {System.out.println("------------ 储存账户 ------------");savingaccount debitCardAccount = new savingaccount("CHK1", 100, 0.01);// 初始余额有100元,调用并打印取90元和取120元的结果。
System.out.println("取90元的结果:" +debitCardAccount.getmoney(90));// 重新存入90元debitCardAccount.storemoney(90);System.out.println("取120元的结果:" +debitCardAccount.getmoney(120));// 创建一个可以透支的信用卡账户。
System.out.println("------------ 支票账户 ------------");checkingaccount crebitCardAccount = new checkingaccount("CHK2", 100, 0.02, 50);// 初始余额有100元,并且透支限度为50元,调用并打印取90元、取120元和取160元的结果。
System.out.println("取90元的结果:" +crebitCardAccount.getmoney(90));// 重新存入90元crebitCardAccount.storemoney(90);System.out.println("取120元的结果:" +crebitCardAccount.getmoney(120));// 重新存入120元crebitCardAccount.storemoney(120);System.out.println("取160元的结果:" +crebitCardAccount.getmoney(160));}}class Account{private String accountNumber;protected double overage;//余额private double annualInterestRate;//年利息public Account(String accountNumber, double overage,double annualInterestRate){this.accountNumber=accountNumber;this.overage=overage;this.annualInterestRate=annualInterestRate;}public void storemoney(double money){this.overage+=money;}public boolean getmoney(double money){if(this.overage<money)return false;else{this.overage-=money;return true;}}}class savingaccount extends Account {public savingaccount(String accountNumber, double overage,double annualInterestRate) {super(accountNumber, overage, annualInterestRate);}}class checkingaccount extends Account {private double overdraftLimit; // 透支限度public checkingaccount(String accountNumber, double overage,double annualInterestRate, double overdraftLimit) {super(accountNumber, overage, annualInterestRate);this.overdraftLimit = overdraftLimit;}public double getOverdraftLimit() {return this.overdraftLimit;}public void setOverdraftLimit(double overdraftLimit) {// 透支限度必须为零和正数,否则为零。
this.overdraftLimit = overdraftLimit >= 0 ? overdraftLimit : 0;}public checkingaccount(String accountNumber, double overage, double annualInterestRate) {super(accountNumber, overage, annualInterestRate); }public boolean getmoney(double money) {// 如果账户余额 + 透支限度的总金额仍不足,则不能取款if (this.overage + this.overdraftLimit < money) return false;// 否则从账户余额中扣除相应的金额this.overage -= money;return true;}}第三类:1:import java.awt.*;import java.util.Calendar;import java.util.GregorianCalendar;import javax.swing.JButton;import javax.swing.JLabel;import javax.swing.JPanel;import javax.swing.JTextField;import java.awt.GridLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.JFrame;public class clock extends JFrame{private int hour;private int minute;private int second;private JLabel l1=new JLabel("小时");private JLabel l2=new JLabel("分");private JLabel l3=new JLabel("秒");private JTextField t1=new JTextField(" ");private JTextField t2=new JTextField(" ");private JTextField t3=new JTextField(" ");private JButton b1=new JButton("设置");public clock(){J Panel p1=new JPanel();p1.setLayout(new FlowLayout(FlowLayout.LEFT,20,20));p1.add(l1);p1.add(t1);p1.add(l2);p1.add(t2);p1.add(l3);p1.add(t3);p1.add(b1);f inal StillClock c1=new StillClock(7,5,11);s etLayout(new BorderLayout());a dd(c1,BorderLayout.CENTER);a dd(p1,BorderLayout.SOUTH);b1.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent arg0) {hour=Integer.parseInt(t1.getText().toString());minute=Integer.parseInt(t2.getText().toString());second=Integer.parseInt(t3.getText().toString());c1.sethour(hour);c1.sethour(minute);c1.sethour(second);repaint();}});}public static void main(String args[]){clock frame = new clock();frame.setTitle("text");frame.setSize(300, 300);frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setLocationRelativeTo(null);frame.setVisible(true);}class StillClock extends JPanel{private int hour;private int second;private int minute;public StillClock(int hour, int minute, int second) {this.hour = hour;this.minute = minute;this.second = second;}public void sethour(int honr){t his.hour=hour;}public void setminute(int minute){t his.minute=minute;}public void setsecond(int second){t his.second=second;}protected void paintComponent(Graphics g){super.paintComponent(g);int clockRadius = (int)((double)Math.min(getWidth(), getHeight()) * 0.8 * 0.5);int xCenter = getWidth() / 2;int yCenter = getHeight() / 2;g.setColor(Color.black);g.drawOval(xCenter - clockRadius, yCenter - clockRadius, 2 * clockRadius, 2 * clockRadius);g.drawString("12", xCenter - 5, (yCenter - clockRadius) + 12);g.drawString("9", (xCenter - clockRadius) + 3, yCenter + 5);g.drawString("3", (xCenter + clockRadius) - 10, yCenter + 3);g.drawString("6", xCenter - 3, (yCenter + clockRadius) - 3);int sLength = (int)((double)clockRadius * 0.8);int xSecond = (int)((double)xCenter + (double)sLength * Math.sin((double)second * 2*Math.PI/60 ));int ySecond = (int)((double)yCenter - (double)sLength * Math.cos((double)second * 2*Math.PI/60));g.setColor(Color.red);g.drawLine(xCenter, yCenter, xSecond, ySecond);int mLength = (int)((double)clockRadius * 0.65);int xMinute = (int)((double)xCenter + (double)mLength * Math.sin((double)minute * 2*Math.PI/60));int yMinute = (int)((double)yCenter - (double)mLength * Math.cos((double)minute * 2*Math.PI/60));g.setColor(Color.blue);g.drawLine(xCenter, yCenter, xMinute, yMinute);int hLength = (int)((double)clockRadius * 0.5);int xHour = (int)((double)xCenter + (double)hLength * Math.sin(((double)(hour % 12) + (double)minute / 60) * 2*Math.PI/12));int yHour = (int)((double)yCenter - (double)hLength * Math.cos(((double)(hour % 12) + (double)minute / 60) * 2*Math.PI/12));g.setColor(Color.green);g.drawLine(xCenter, yCenter, xHour, yHour);}}}。