课堂练习八-十三-o_第1页
课堂练习八-十三-o_第2页
课堂练习八-十三-o_第3页
课堂练习八-十三-o_第4页
课堂练习八-十三-o_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、课堂练习八(2014-04-21)1.如果要给frame容器设置FlowLayout布局管理器,可以使用如下语句: this.set_Layout (new FlowLayout();2.用_Boxlayout_类可以创建一个布局对象,称为盒式布局。3.WindowAdapter类实现了Window_Listener_接口。4.java.awt包中的_Canvas_类负责创建画布对象。5._GridLayout_是使用较多的布局,其基本布局策略是把容器划分成若干行乘若干列的网格区域,组件就位于这些划分出来的小格中。6.设frame是JFrame类型的对象,如果设置其为可见,可以用如下语句: f

2、rame.set _Visible_(true);7.Component_是所有AWT组件的抽象父类。8._Container_类是所有容器组件的根类。9._java.awt_包是Java语言用来构建GUI的基础类库,包括了很多AWT界面组件和资源。10.设frame是JFrame类型的对象,如果设置其大小不可调整,可以用如下语句: frame.set_ Resizable_(false); 1.BorderLayout是面板的缺省布局管理器。Y2.一个容器中可以混合使用多种布局策略。N3.在使用BorderLayout时,最多可以使用五个构件。Y4.静态方法只能直接访问其他静态方法或静态成员

3、变量。当对象已存在时,调用静态方法时的前缀既可以是类名,也可以是对象名 Y5.Java中char类型采用Unicode编码,每个字符占2个字节. Y6.监听器类负责处理特定事件,它是一个实现了相应监听器接口的类 Y7.Applet与Application程序的编译方法和运行方式都不同 N8.一个事件源可以注册多个监听器类 Y9.Java 1.1中的事件处理模型要求事件监听器要在事件源中注册,并且要实现相应的事件监听器接口 Y10.与未加访问控制符的缺省情况相比,public和protected修饰符扩大了类及其属性和方法的被访问范围,private修饰符则缩小了这种范围。 Y11.所有的鼠标事

4、件都由MouseListener监听接口的监听者来处理。Y12.容器是用来组织其他界面成分和元素的单元,它不能嵌套其他容器。N13.要对键盘按键响应,需要对KeyEvent事件监听。KeyEvent事件监听器是实现KeyListener接口的类对象。Y14.如果要在程序中对图形界面的组件进行事件处理,一般要在程序开头加上如下语句:import java.awt._event_.*;class FrameInOut extends Frame implements_ActionListener .二、编程实现1、写出程序要求显示一个窗体,在窗体中包含一个标有“Submit“的按钮,当用户点击这个

5、按钮时在控命令行输出字符串”数据提交成功”。 课堂练习九(2014-11)一、判断题1.要响应关闭窗口操作,需要对WindowEvent事件监听.WindowEvent事件监听器是实现WindowListener接口的类对象。Y2.在actionPerformed()方法中,通过getSource()方法判断引起ActionEvent事件的事件源。Y3.使用GridLayout布局策略的容器中,所有的组件都有相同的大小。Y4.一个复选按钮实现的是“二选一”的结构,一个单选按钮组实现的是“多选一”的结构。Y5.一个面板不能被加入到另一个面板中。N6.所有的抛出的异常都必须捕获 N7.对话框分为模

6、式和非模式 Y8.覆盖只能在不同的类中完成 Y9.在实例方法或构造器中,this用来引用当前对象,通过使用this可引用当前对象的任何成员 Y10.Java对事件的处理是采用委托方式进行的,即将需要进行事件处理的组件委托给指定的事件处理器进行处理。Y11.Java中类和方法都不允许嵌套定义 N12.语句“import java.awt.*;”不仅会加载java.awt包中的所有类,而且还会加载java.awt包的子包中含有的类 N13.Java中同一个类的多个对象将独立拥有该类定义的静态成员变量的一个拷贝 Y14.一个类只能有一个父类,但一个接口可以有一个以上的父接口。Y15.一个程序里有且只

7、能有一个公共类,它就是主类。Y16.抽象类没有具体对象,所以抽象类没有构造函数。N17.抽象类中的抽象方法必须在该类的子类中具体实现。N二、认真阅读以下代码写出输出结果并对给出相关分析。class Student public String toString() System.out.println(“welcome to java world!”); return “执行!”; public class Client public static void main(String arg) System.out.println(“程序开始”+new Student(); 三、编程题实现一个Ja

8、va Application图形界面程序,能够实现两数相减、相除的功能,具体要求:(1) 在两个文本框里分别输入两个数字,单击“求差”、“求商”按钮,则在第三个文本框里显示运算结果;(2) 当输入的不是数字或者除数为0时,要求用消息对话框向用户报错;(3) 单击窗口右上角的“X”按钮,即关闭窗口退出课堂练习十(2014-11)I/O一、判断题1.多个事件源可以注册同一个监听器,一个事件源也可能注册多个监听器。Y2.System.out是系统的标准输出流。Y3.System.in是系统的标准输入流。Y4.Reader和Writer分别是字节输入输出流的基类。N5.InputStream和Outp

9、utStream分别是字节输入输出流的基类。Y6.Java中所有的I/O都是通过流来实现的。Y7.Java中I/O流是由java.io包来实现的。Y8.java.io包中定义了许多与磁盘文件或文件夹操作有关的类。Y9.java.awt包是Java语言用来构建图形用户界面(GUI)的类库,它包括了许多界面元素和资源,主要在低级绘图操作、图形界面组件和布局管理、以及界面用户交互控制和事件响应三个方面支持界面设计。Y10.Java中允许一个类可以直接继承若干个超类中的成员变量和方法 N11.创建包将在当前文件夹下创建一个与包名相同的子文件夹,以存放该包中包含的所有类的.class文件 Y12.pub

10、lic修饰符不会造成安全性和数据封装性的下降,所以可以不限制public数据成员变量的使用 N13.java.lang包是由系统自动加载完成的,而不需要在程序中用语句import java.lang.*; 进行显式地加载 Y14.程序运行中可以改变数组的大小 N15.包结构和目录结构是相同的。Y16.java.lang包是Java的核心类库,它包含了运行Java程序必不可少的系统类 Y17.Java中用于文件和目录管理的类是_File_ 类二、改错题讲解import java.awt.*; / 缺; import java.awt.event.*; / 增加此行 import javax.sw

11、ing.*;public class err033right extends Frame implements ActionListener /修改文件名 1分 /implement 1分Label prompt; /修改拼写Label TextField input,output;public err033right( ) / void init改为构造方法 prompt=new Label("请输入你的专业:"); /修改拼写Label input=new TextField(8);output=new TextField(16); /input setLayout(n

12、ew FlowLayout();/增加此句 2分add(prompt);add(input);add(output);input.addActionListener(this); /增加this setSize(500,400); /size 1分 /; setVisible(true); /增加此句 2分public void actionPerformed(ActionEvent e) /去掉static 1分 / ; 1分JOptionPane.showMessageDialog(null,"你喜欢吗?","友情提醒",JOptionPane.QU

13、ESTION_MESSAGE);/Dialog 1分output.setText("好好学"+input.getText();public static void main(String args) /String 大写s new err033right(); / 修改文件名 一、URL程序示例获取URL指定的资源import java.io.*; import .URL; import .URLConnection; public class TestURL public static void main(String args) throws IOException t

14、est3(); test2(); test(); /* /* * 获取URL指定的资源 * * throws IOException */ public static void test3() throws IOException URL url = new URL(" /返回一个 URLConnection 对象,它表示到 URL 所引用的远程对象的连接。 URLConnection uc = url.openConnection(); /打开的连接读取的输入流。 InputStream in = uc.getInputStream(); int c; while (c = in.

15、read() != -1) System.out.print(c); in.close(); /* * 读取URL指定的网页内容 * * throws IOException */ public static void test2() throws IOException URL url = new URL(" /打开到此 URL 的连接并返回一个用于从该连接读入的 InputStream。 Reader reader = new InputStreamReader(new BufferedInputStream(url.openStream(); int c; while (c =

16、 reader.read() != -1) System.out.print(char) c); reader.close(); /* * 获取URL的输入流,并输出 * * throws IOException */ public static void test() throws IOException URL url = new URL(" /打开到此 URL 的连接并返回一个用于从该连接读入的 InputStream。 InputStream in = url.openStream(); int c; while (c = in.read() != -1) System.ou

17、t.print(c); in.close(); 二、Java网络编程示例基于TCPimport .*;import java.io.*;public class Lesson10 extends Thread private Socket s; public static void main(String args) if(args.length>0) server(); else client(); public static void server() try ServerSocket ss=new ServerSocket(6000); Socket s = ss.accept()

18、; OutputStream os=s.getOutputStream(); BufferedOutputStream bos=new BufferedOutputStream(os); InputStream is=s.getInputStream();/ os.write("Hello,welcome you!".getBytes(); bos.write("Hello,welcome you!".getBytes(); /bos.flush(); byte buf=new byte100; int len=is.read(buf); System.

19、out.println(new String(buf,0,len); /os.close(); bos.close(); is.close(); s.close(); ss.close(); catch (Exception ex) ex.printStackTrace(); public static void client() try Socket s=new Socket(InetAddress.getByName(null),6000); OutputStream os=s.getOutputStream(); InputStream is=s.getInputStream(); by

20、te buf=new byte100; int len=is.read(buf); System.out.println(new String(buf,0,len); os.write("Hello,this is wangwu".getBytes(); os.close(); is.close(); s.close(); catch (Exception ex) ex.printStackTrace(); 三、Java网络编程示例基于TCPimport .*;import java.io.*;public class Lesson10 extends Thread pub

21、lic static void main(String args) if(args.length>0) recv(); else send(); public static void recv() try DatagramSocket ds=new DatagramSocket(6000); byte buf=new byte100; DatagramPacket dp=new DatagramPacket(buf,100); ds.receive(dp); System.out.println(new String(buf,0,dp.getLength(); String str=&q

22、uot;Welcome you!" DatagramPacket dpSend=new DatagramPacket(str.getBytes(),str.length(),dp.getAddress(),dp.getPort(); ds.send(dpSend); ds.close(); catch (Exception ex) ex.printStackTrace(); public static void send() try DatagramSocket ds=new DatagramSocket(); String str="Hello,this is zhang

23、san" DatagramPacket dp=new DatagramPacket(str.getBytes(),str.length(), InetAddress.getByName("localhost"), 6000); ds.send(dp); byte buf=new byte100; DatagramPacket dpRecv=new DatagramPacket(buf,100); ds.receive(dpRecv); System.out.println(new String(buf,0,dpRecv.getLength(); ds.close(

24、); catch (Exception ex) ex.printStackTrace(); 课堂练习十一(2014-12)Net1.基于流式Socket进行通信,至少需要一对套接字,一个运行于客户机端,称之为Socket,一个运行于服务器端,称之为_ServerSocket_。2.方法_OpenStream_与指定的URL建立连接并返回InputStream类的对象以从这一连接中读取数据。3.IP地址标识Internet上的计算机,端口号标识正在计算机上运行的进程。端口号与IP地址的组合得到一个网络套接字。Y4.服务器端的Socket对象使用getOutputStream()方法获得的输出流将

25、指向客户端Socket对象,使用getInputStream()方法获得的输入流。Y5.基于TCP的通信和基于UDP的通信不同,基于TCP的信息传递更快,但不提供可靠性保证。N6.客户端的程序使用ServerSocket类建立到服务器的套接字连接。N7.客户负责建立客户到服务器的套接字连接,即客户负责呼叫。因此,服务器必须建立一个等待接收客户的套接字的Socket对象。N8.Reader类用来以字符方式从流中读取数据。Y9.URL对象调用openStream()方法可以返回一个输入流,该输入流指向URL对象所包含的资源。Y10.包中的InetAddress类对象含有一个Internet主机地址

26、的域名和IP地址。Y11.Thread类的run()方法与Runnable接口中的run()方法的功能和作用相同,都用来定义线程对象被调度之后所执行的操作,都是系统自动调用而用户程序不得引用的方法。 Y12.Runnable接口中包含唯一的run()方法。Y课堂练习十二(2014-12)1.在Java程序中要访问网络资源,需要用import语句引入java._net_包中的相应类。2.当Java Applet执行完init()方法以后,就执行_start_方法,或者当用户离开Applet所在网页一段时间以后,又重新回到其所在网页(即重新激活该 网页)时,再次执行该方法。3.Java Apple

27、t中的_paint_方法用来绘制窗口,当窗口的大小发生变化、由不活动状态再次变为活动状态等时候,该方法都会被调用。4.在Swing组件中,单选按钮J_radioButton_用来显示一组互斥的选项。在同一组单选按钮中,任何时候最多只能有一个按钮被选中。5.Swing组件的用法与AWT组件基本相同,大多数AWT组件只要在其类名前加_J_即可转换成Swing组件.6.Graphics类位于AWT包中,常用来绘制文字和图像。可以使用Graphics类中的_drawString_方法来绘制文本。7.Java中实现多线程有两种途径,一是定义Thread类的子类;二是实现_runnable_接口。8.dr

28、awImage()方法用于加载图像,而getImage()方法用来绘制图像。N9.为了播放音频,必须首先获得一个AudioClip对象。可使用getAudioClip()方法。Y10.AudioClip类型对象的play()方法用于播放声音文件,而loop()方法用于循环播放。Y11.JMF(Java Media Framework)提供了编写多媒体程序所必须的包javax.media.Y12.在Java程序中,图像由一个Image类的对象来表示。Y13.getImage()方法与drawImage()方法都是Image对象的方法。N14.Java程序中只能通过创建Thread类的子类实现多线

29、程,而无其他途径 N课堂练习十三(2014-12)JDBC1.Java数据库连接(Java DataBase Connectivity),简称_JDBC_,是由Sun公司提供的与平台无关的数据库连接标准。2.通过使用_JDBC_数据库访问接口,Java程序可以方便地连接各种类型的数据库,拓展了Java与平台无关的特性。3.结构化查询语言(Structured Query Language),简称_SQL_。是一种建立在关系演算基础上的数据库语言,用于对关系型数据库进行定义和操纵。4.使用JDBC操作数据库,首先要加载JDBC驱动程序,其语句格式为:Class._forName()_(JDBC驱

30、动程序名);5.加载了JDBC驱动程序以后,就可以连接数据库了,连接数据库使用的语句格式如下:Connection 连接变量名=DriverManager._getConnection_(数据库URL,用户账号,用户密码);连接上数据库以后,就可以对数据库进行查询、更改或添加数据等操作。执行SQL语句一般需要建立Statement对象,其语句格式如下: Statement 对象名=数据库连接变量._CreateStatement ();6.Statement 对象的executeQuery方法执行Select查询,_ executeUpdate_方法执行对数据的更新操作。7.方法_ OpenS

31、tream _与指定的URL建立连接并返回InputStream类的对象以从这一连接中读取数据。8._多_线程是指程序中同时存在多个执行体,它们按照自己的执行路线并发工作,独立完成各自的功能,互相不干扰。9.处于新建状态的线程有自己的内存空间,通过调用_start_方法进入就绪状态。10.处于就绪状态的线程一旦获得CPU,线程就进入运行状态并自动调用自己的_run_方法。11.处于运行状态的线程在某些情况下,如执行了_sleep_(睡眠)方法,或等待I/O设备等资源,让出CPU并暂时停止自己的运行,进入阻塞状态。12.死亡状态是线程生命周期中的最后一个阶段。线程死亡的原因有两个:一个是正常运行

32、的线程完成了它的全部工作,另一个是线程被强制性地终止,如通过stop()或_destroy_方法来终止一个线程。13.在Java程序中要访问网络资源,需要用import语句引入java._net_包中的相应类。15、设有程序如下,请填写完整. import java.sql.*; public class UseJDBC public static void main(String args) throws SQLException,ClassNotFoundException Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); C

33、onnection conn=DriverManager.getConnection("jdbc:odbc:PhoneBook"); Statement stmt=conn.createStatement(); ResultSet rset=stmt._ executequery_("select * from telnum");while(rset.next() System.out.println("姓名:"+rset.getString("name")+"t"+"电话:"

34、;+rset.getString("telnum"); rset.close(); stmt.close(); conn.close(); 16、设有程序如下,请填写完整. import java.sql.*; public class UseJDBC3 public static void main(String args) throws SQLException,ClassNotFoundException Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); Connection conn=DriverMan

35、ager.getConnection("jdbc:odbc:PhoneBook"); Statement stmt=conn.createStatement(); stmt._ executeUpdata?_("update flower set 价格=5 where 名称='rose' "); stmt.close(); conn.close(); 1、设有程序如下,请填写完整. import java.sql.*; public class UseJDBC2 public static void main(String args) t

36、hrows SQLException,ClassNotFoundException Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); Connection conn=DriverManager.getConnection("jdbc:odbc:PhoneBook"); Statement stmt=conn.createStatement(); stmt._executeUpdate_("insert into flower values('rose',1.5)"); stm

37、t.close(); conn.close(); 2、设有程序如下,请填写完整. import java.sql.*; public class UseJDBC4 public static void main(String args) throws SQLException,ClassNotFoundException Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); Connection conn=DriverManager.getConnection("jdbc:odbc:PhoneBook"); Sta

38、tement stmt=conn.createStatement(); stmt._ executeUpdate_("delete from flower where 名称='rose' "); stmt.close(); conn.close(); 课堂练习补充1 一、语法填空题1._java.awt_包是Java语言用来构建GUI的基础类库,包括了很多AWT界面组件和资源。2.存放字符串常量的对象属于String类,而存放字符串变量的对象属于_StringBuffer_ 类。3.int i=2; n=i+=i-;运行结果是n=_1_ i= _2_。4.i

39、nt x=1;int k=x<1 ? 2:1; 运行结果是k=_1_5.HTML文件可以使用_<Param>_ 标记向Applet 程序传递参数。6.http服务的端口号是_80_。7.ftp服务的端口号是_21_8.空指针异常类的类名称是:Null_Pointer _Exception。9.在将字符串转换为数值类型时可能发生的异常类型是:Number_Format_Exception.10.在进行输入输出操作时最可能发生的异常类型是:_IO_Exception。11.使用JDK提供的_javadoc_.exe命令可以制作源文件类结构的HTML格式文档。12.可以使用JDK提

40、供的_jar_.exe命令把一些字节码文件压缩成JAR文件,来发布应用程序。13.设frame是JFrame类型的对象,如果设置其为可见,可以用如下语句: frame.set_Uisible_(true);14.设frame是JFrame类型的对象,如果设置其大小不可调整,可以用如下语句: frame.set_Resizable_(false);15.设frame是JFrame类型的对象,如果要撤销该窗口,并释放其所使用的资源,可以用如下语句: frame._dispose_();16.如果要设置TextField对象tf上的字符显示时用"*"代替,可以用如下语句: tf.

41、set_EchoChar_('*');17.如果要设置Label对象lbl上的文字显示为居中显示,可使用以下语句: lbl.setAlignment(Label._show_);18._GridLayout_是使用较多的布局,其基本布局策略是把容器划分成若干行乘若干列的网格区域,组件就位于这些划分出来的小格中。19.创建画布对象的常用办法是用Canvas的子类来创建画布对象,并在子类中重写父类的 public void _paint_(Graphics g)方法。20.动态初始化一个元素个数为5的一维长整型数组,其语句格式为:21.long myArray =new _long

42、5_;22.在Java语言中,获取字符串对象中指定位置index处的字符,其语句格式为: 字符串对象._substring_(index);23.一个字符串s通过调用_public String trim_() 方法得到一个字符串对象,该字符串对象是s去掉前后空格后的字符串。24.设calendar是Calendar类型的对象,如果要返回其代表的年份,可能用表达式: calendar.get(Calendar._YEAR_);二、程序理解题1、 class FrameInOut extends Frame /创建图形界面的类 TextField input; FrameInOut() supe

43、r("图形界面的Java Application程序"); .setSize(300,200); setVisible(_true_); 2、设有语句如下: int a=1, c=6; System.out.println(- +a+c)+"a="+a); 则其输出结果是_a=23、设有语句:boolean b=MyObject instanceof TextField;如果MyObject是Button类的对象,则以上语句中的变量b的值=_。设语句如下: int a=1, c=6; int i=4; System.out.println("c

44、* - i = "+c * - i); 则以上语句的输出结果是:c* - i =_-24_4、设有语句如下: int b=1; System.out.println("b="+b); 则其输出结果是: b = _0_5、设有语句如下: int m=2,n=3,x=4,y=5; System.out.println("n>m?x:(y<m)?8:9 " +(n>m?x:(y<m)?8:9); 则其输出结果是n>m?x:(y<m)?8:9 _4_6、已知语句如下: int m=2,n=3,x=4,y=5; Sys

45、tem.out.println("n<m?x:y "+(n<m?x:y); 则其输出结果是n<m?x:y _5_ 9、以下程序段在编译时出错:boolean m_b$Flag; switch(m_b$Flag) case 0: System.out.println("False"); case 1: System.out.println("True"); 如果将第一句中的boolean类型替换为_void_类型即可通过编译。 10、假设x=1,y=2,z=3,则表达式 x>y?x>z?x:y:y>z

46、?y:z>x?z:x的值是_3_。 执行下列代码后,x的值=_11_。 int x,a=2,b=3,c=4; x=+a+b+c+; 执行下列代码后,a=_3_。 int x,a=2,b=3,c=4; x=+a+b+c+;11、以下程序的运行结果是a+b=_296_。public class A public static void main (String args) int a=0x100; short b=050; System.out.println("a+b="+a+b); 12、下面的代码能否通过编译(是/否)? Y for(;n<10;n+) int

47、 n=0; System.out.println("Is it ok?"); 13、下面程序对数组中每个元素赋值,然后按逆序输出。请在横线处填入适当内容,使程序能正确运行。 import java.io.*; public class ArrayTest public static void main(String args ) int i; int a =new int5; for(i=0;i<5;i+) ai=i; for( _ _int k=4_;k>=0;k-) System.out.println(a+k+=+ak) 14、下列程序的功能是判断某一年是

48、否为闰年。请在横线处填入正确语句,使程序能够正确运行。 import java.io.*; public class LeapYear public static void main(String args ) throws IOException InputStreamReader ir; BufferedReader in; ir=new InputStreamReader(System.in); in=new BufferedReader(ir); System.Out.println(输入年份是:) ;String s= _ in.readLine()_;int year=Integer.parseInt(s); if (year % 4 = 0 && year % 100!=0|year % 400=0) System.out.println(+year+年是闰年。) ; else System.out.println(+year+年不是闰年。); 15、设x的初值是1,经过以下运算后,x=_6_。 (y=1)=0)&&(x=6)=6);设x的初值是1,经过以下运算后,x=_6_。 (y=1)=1)&&(x=6)=6);16、执行以下程序后,y=_20_。public c

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论