(含参考答案)浙江大学城市学院试卷(Java高级程序的设计2010_1011_1)
浙大Java语言程序设计编程答案10

实验11 字符串处理1. 统计单词(选做) 40031输入一个正整数repeat (0<repeat<10),做repeat次下列运算:输入一行字符,统计其中单词的个数。
各单词之间用空格分隔,空格数可以是多个。
例:括号内是说明输入2 (repeat=2)Reold building room 123Programming is fun输出43import java.util.Scanner;public class Test40031{public static void main(String []args ){int ri, repeat,count, word,i;String line;char c;Scanner in=new Scanner(System.in);repeat=(in.nextLine()).charAt(0)-'0';for(ri=1; ri<=repeat; ri++){line=in.nextLine();/*---------*/count=word=0;for(i=0;i<line.length();i++){c=line.charAt(i); //从字符串line中取出第i个字符,放入变量cif(c==32) word=0; //当前字符是空格,表示不是单词else if(word==0){ //当前字符不是空格,同时word=0,表示新单词开始word=1;count++;}}System.out.println( count);}}}2. 输出一个整数的各位数字(选做) 40032输入一个正整数repeat (0<repeat<10),做repeat次下列运算:输入一个整数,从高位开始逐位输出它的各位数字。
输出语句:System.out.print(digit+" ");例:括号内是说明输入3 (repeat=3)123456-6008输出1 2 3 4 5 66 0 08import java.util.Scanner;public class Test40032{public static void main(String []args ){int ri, repeat;int digit;long n, temp, pow;Scanner in=new Scanner(System.in);repeat=in.nextInt();for(ri=1; ri<=repeat; ri++){n=in.nextLong();/*---------*/n=Math.abs(n);String s=String.valueOf(n); //把整数n转换成字符串for(int i=0;i<s.length();i++){digit=s.charAt(i)-'0'; //从高位到低位依次得到一位数字System.out.print(digit+" "); //输出该位数字,再加一个空格}System.out.println();}}}注意:若语句digit=s.charAt(i)-'0';改为digit=s.charAt(i);则变量digit的值为该字符的unicode编码。
浙江大学城市学院软件基础在线测试题

软件工程一、单选题1..软件测试的目的是_____________。
A.为了表明程序没有错误;B.为了说明程序能正确地执行《C.为了发现程序中的错误D.!为了评价程序的质量正确答案是:C》2.结构化方法是一种___________的软件开发方法。
A.面向用户《B.面向数据结构,C.面向对象D.&面向数据流正确答案是:D3.下面_________不是详细设计的图形工具。
A.程序流程图|B.N-S图】C.PDLD.#PAD正确答案是:C…4.下列关于功能性注释不正确的说法是__________。
A.功能性注释嵌在源程序中,用于说明程序段或语句的功能以及数据的状态|B.用来说明程序段,需要在每一行都要加注释^C.可使用空行或缩进,以便很容易区分注释和程序D.]修改程序也应修改注释正确答案是:B;5.下面____________开发阶段在典型环境下所需的人力百分比最高A.可行性分析·B.需求分析{C.软件设计D.&测试正确答案是:D/ 6.下列文档与维护人员有关的有_________。
A.软件需求说明书#B.项目开发计划《C.维护手册D.、概要设计说明书正确答案是:C` 7.下列关于瀑布模型不正确的是___________。
A.瀑布模型上一阶段的变换结果是下一阶段的输入—B.瀑布模型每个阶段都不需要反馈—C.瀑布模型提供了软件开发的基本框架D.【瀑布模型存在局限性正确答案是:B:8.在白盒技术测试用例的设计中,以下覆盖标准中发现错误能力最强的是________A.语句覆盖^B.判定/条件覆盖)C.条件组合覆盖D.\判定覆盖正确答案是:C9.软件调试技术包括__________A.回溯法调试】B.循环覆盖调试]C.边界值分析调试D.@集成测试调试正确答案是:A~ 10.在软件测试中,首先对每个模块分别进行单元测试,然后再把所有的模块按设计要求组装在一起测试,称为___________A.确认测试】B.系统测试^C.渐增式测试D.\非渐增式测试正确答案是:D》11.________的前提是完全了解程序的结构和处理过程A.白盒测试!B.黑盒测试》C.α测试D.~β测试正确答案是:A12.下面_________不是程序设计小组的组织形式。
浙大《高级程序设计(JAVA)》在线作业

浙大《高级程序设计(JAVA)》在线作业浙大《高级程序设计(JAVA)》在线作业试卷总分:100 测试时间:--单选题多选题判断题、单选题(共 20 道试题,共 40 分。
)1. 在Java中,负责对字节代码解释执行的()A. 垃圾回收器B. 虚拟机C. 编译器D. 多线程机制满分:2 分2. 下面的代码段中,执行之后i 和j 的值是()。
int i = 1; int j; j = i++;A. 1, 1B. 1, 2C. 2, 1D. 2, 2满分:2 分3. "阅读下面程序 class ex3124 { public static void main(String [] args) { boolean b=true; if(b){ int i=1;} else { int i=2;}System.out.println(i);}} 现在想先编译再运行该程序,结果是()。
A. 1B. 2C. 编译出错D. 运行出错满分:2 分4. System类在哪个包中()。
A. java.utilB. java.ioC. java.awtD. /doc/3612736702.html,ng满分:2 分5. 下列运算符中,优先级最高的是()。
A. &&B. ++C. +D. *满分:2 分6. 下面关于Applet的说法正确的是()。
A. Applet也需要main方法B. Applet必须继承自java.awt.AppletC. Applet能访问本地文件D. Applet程序不需要编译满分:2 分7. 下面哪几个函数是public void example(){...}的重载函数()。
A. public void example( int m){...}B. public int example(){...}C. public void example2(){...}D. public int example3 ( int m, float f){...}满分:2 分8. 关于被私有访问控制符private修饰的成员变量,以下说法正确的是()。
201007VB期末考卷城市学院

Dim x As Integer, n As Integer
n = 1: x = 1
Do While x < 20
n = n + 1
x = x * (x + 1)
n = n Mod 10
m = m Mod 10
End Sub
Private Sub Form_Click()
Dim x As Integer, y As Integer
x = 89: y = 76
Pro x, y
Public Sub form_click()
Dim x As String, y As String, temp As String
Dim c() As String
Dim k As Integer, i As Integer, j As Integer
x = InputBox("输入一个字符串")
A.属性、控件和方法 B.属性、事件和方法
C.窗体、控件和过程 D.控件、过程和模块
2.函数(Int(45 * Rnd) + 5) * 2的值是在___范围内的偶数?
A.[0,100] B.[0,98] C.[10,100] D.[10,98]
C.Sgn(x)、Int(x)、Len(x) D.Fix(x)、Left(x)、Ucase(x)
5.先声明Dim X As String*10,再赋值X="浙江",最后Len(X)的值为 。
A.10 B.2 C.4 D.12
6.判断变量x、y中有且只有一个为0的下列各表达式中,正确的是 。
浙江大学Java语言程序设计实验答案全集

Java答案全集实验汇总。
实验2 数据类型和变量的使用一、程序填空,在屏幕上显示一个短句“Programming in Java is fun!”import java.io.*;public class Test10001{public static void main(String args[]){/*------------------------*/System.out.println("Programming in Java is fun!"); }}二、程序填空,在屏幕上显示如下网格。
+---+---+| | || | |+---+---+import java.io.*;public class Test10002{public static void main(String args[]){/*------------------------*/System.out.println("+---+---+");System.out.println("| | |");System.out.println("| | |");System.out.println("+---+---+");}}三、编写程序,在屏幕上显示如下图案。
(要求:第1行行首无空格,每行行尾无空格)* * * ** * ** **public class Test10003{public static void main(String args[]){/*------------------------*/System.out.println("* * * *");System.out.println(" * * *");System.out.println(" * *");System.out.println(" *");} }实验3 运算符和表达式的使用1、运行结果:m=2 k=1x=1.0 y=2.0 z=-3.0ch1=-A ch2=Ach1=-A ch2=aHello,Welcome to core Java!思考题:(1)字符'A'的Unicode码比字符'a'的Unicode码小32。
JAVA高级试卷A卷

第1页/共21页2010-2011学年第二学期《Java 高级程序设计》试题A一、选择题,答案写在下面表格中(每题1分共15分)123456789101112131415选项事件的相关接口是()A 、ListActionListenerB 、ListSelectionListenerC 、ActionListenerD 、SelectionListener2、在以下Swing 的类中,属于容器的是()A 、JApplet B 、JButton C 、JTextAreaD 、JMenu3、要从文件"file.dat"文件中读出第10个字节到变量C 中,下列哪线订装郑州轻工业学院/学年第学期试卷专业年级及班级姓学号个方法适合?() A、FileInputStreamin=newFileInputStream("file.dat");in.skip(9);int c=in.read();B、FileInputStreamin=newFileInputStream("file.dat");in.skip(10);intc=in.read();C、FileInputStream in=new FileInputStream("file.dat"); int c=in.read();D、RandomAccessFile in=new RandomAccessFile("file.d at");in.skip(9);int c=in.readByte();4、下列叙述中,错误的是()A、File类能够存储文第2页/共21页件B、File类能够读写文件C、File类能够建立文件D、File类能够获取文件目录信息5、以下关于线程互斥和同步的叙述中,正确的是()A、多线程互斥使用各自资源的程序段,在操作系统中称为临界段B、临界段的作用是使某线程能够使用其它线程的资源C、可以使用notify()方法通知等待线程结束等待D、线程的互斥和同步可以很好地解决死锁问题6、利用继承Thread类实现多线程,在Thread的子类中,下列那个方法必须被实现.()A、run()B、start()第3页/共21页C、Thread()D、sleep()7、读以下代码:public static void main(String[]args){Socket[] sockets=newSocket[1024];point=0;try{ServerSocket serverSocket=new ServerSocket(9700);while(true&& point<1024){sockets[ point++]=serverSocke t.accept();System.o ut.println("ServerSoc ket connected");}}catch(Excepti第4页/共21页on e){}}对于以上代码描述正确的是() A、该代码建立一个服务器,并且监听9700端口,可以连接1024个客户端B、该代码建立一个客户端,对同一服务器进行了1024次连接C、该代码建立一个客户端,使用9700端口连接到1024个服务器上D、该代码建立一个服务器,对一个客户端进行了1024次连接.8、某程序利用网址参数创建URL对象url,接着希望利用对象url获得第5页/共21页URLConnection对象,则这个url对象要调用的方法是()A.connection()B.URLConnection()C.getConnection()D.openConnection()9、实现下列哪个接口可以对JTextField对象的事件进行监听和处理?()A、ActionListenerB、FocusListenerC、MouseMotionListenerD、WindowListener10、获取InetAddress对象的域名所用到的方法是()A、getByName()B、getHostAddress()C、getLocalHost()D、getHostName()11、在编写访问数据库的第6页/共21页Java程序时,ResultSet对象的作用是()A、建立新数据库连接B、用来表示与数据库的连接C、在指定的连接中处理SQL语句D、存储查询结果12、那个关键字可以对资源加锁互斥()A、serializeB、staticC、SynchronizedD、Final13、程序如果要按行输入输出文件的字符流,最合理的方法是采用()A、BufferedReader 和BufferedWriterB、InputStream和OutputStreamC、FileReade和FileWriterD、File_Reader和File_Writer第7页/共21页14、监听事件和处理事件()A、都由Listener完成B、都由相应事件Listener处登记过的构件完成C、由Listener和构件分别完成D、由Listener和窗口分别完成15、在编写访问数据库的Java程序中,要用到DriverManager类。
浙江大学java上机参考答案48页word文档

一、求两个数的和与差。
程序填空,不要改变与输入输出有关的语句。
输入整数a和b,计算并输出a、b的和与差。
import java.io.*;import java.util.Scanner;public class Test20001{public static void main(String args[]){int a, b, sum, diff;Scanner in=new Scanner(System.in);a=in.nextInt();b=in.nextInt();sum=a+b;diff=a-b;System.out.println("The sum is "+sum);System.out.println("The difference is "+diff);二、求平方根。
程序填空,不要改变与输入输出有关的语句。
输入1个实数x,计算并输出其平方根。
例:输入1.21输出The square root of 1.21 is 1.1import java.io.*;import java.util.Scanner;public class Test20002{public static void main(String args[]){double x, root;Scanner in=new Scanner(System.in);x=in.nextDouble();r oot=Math.sqrt(x);System.out.println("The square root of "+x+" is "+root);三、华氏温度转换为摄氏温度。
程序填空,不要改变与输入输出有关的语句。
输入华氏温度f,计算并输出相应的摄氏温度c。
c = 5/9(f-32).例:括号内是说明:输入17.2 (华氏温度)输出The temprature is -8.222222222222223 import java.util.Scanner;public class Test20003 {public static void main(String[] args) {Scanner in=new Scanner(System.in);double f, c;f=in.nextDouble();c=5.0/9*(f-32);System.out.println("The temprature is "+c);四、计算旅途时间。
(完整版)《JAVA程序设计》(含答案)

《JA V A程序设计》练习题一、单选择题1、编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为( B )。
A. javaB. .classC. htmlD. .exe2、设x = 1 , y = 2 , z = 3,则表达式y+=z--/++x 的值是( A)。
A. 3B. 3. 5C. 4D. 53、不允许作为类及类成员的访问控制符的是( C )。
A. publicB. privateC. staticD. protected4、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( A)。
A. static void method( )B. public void method( )C. final void method( )D. abstract void method( )5、关于选择结构下列哪个说法正确?( B )A.if语句和else语句必须成对出现B.if语句可以没有else语句对应C.switch结构中每个case语句中必须用break语句D.switch结构中必须有default语句6、while循环和do…while循环的区别是:( D)A.没有区别,这两个结构任何情况下效果一样B.while循环比do…while循环执行效率高C.while循环是先循环后判断,所以循环体至少被执行一次D.do…while循环是先循环后判断,所以循环体至少被执行一次7、关于for循环和while循环的说法哪个正确?( B)A.while循环先判断后执行,for循环先执行后判断。
B.while循环判断条件一般是程序结果,for循环的判断条件一般是非程序结果C.两种循环任何时候都不可以替换D.两种循环结构中都必须有循环体,循环体不能为空8、下列修饰符中与访问控制无关的是( D)A.private B.publicC.protected D.final9、void的含义:( A)A.方法没有返回值B.方法体为空C.没有意义 D.定义方法时必须使用10、return语句:( C )A.只能让方法返回数值B.方法都必须含有C.方法中可以有多句return D.不能用来返回对象11、关于对象成员占用内存的说法哪个正确?( B)A.同一个类的对象共用同一段内存B、同一个类的对象使用不同的内存段,但静态成员共享相同的内存空间C.对象的方法不占用内存D.以上都不对12、下列说法哪个正确?( C)A.不需要定义类,就能创建对象B.对象中必须有属性和方法C.属性可以是简单变量,也可以是一个对象D、属性必须是简单变量13、下列说法哪个正确?( A )A、一个程序可以包含多个源文件B、一个源文件中只能有一个类C、一个源文件中可以有多个公共类D、一个源文件只能供一个程序使用14、关于方法main()的说法哪个正确?( C )A.方法main()只能放在公共类中B main()的头定义可以根据情况任意更改C.一个类中可以没有main()方法D.所有对象的创建都必须放在main()方法中15、构造函数何时被调用?( A )A、创建对象时B、类定义时C、使用对象的方法时D、使用对象的属性时16、抽象方法:( C )A、可以有方法体B、可以出现在非抽象类中C、是没有方法体的方法D、抽象类中的方法都是抽象方法17、关于继承的说法正确的是:( B )A、子类将继承父类所有的属性和方法。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
诚信应考考出水平考出风格大学城市学院2010—2011学年第一学期期末考试试卷《Java高级程序设计》开课单位:计算分院;考试形式:开卷;考试时间:2011年1月16日所需时间:120 分钟题序一二三总分得分评卷人得分一.__简答题_(本大题共_7__题,每题__5__分,共__35_分)注意:回答问题尽量简明扼要。
多线程可以使用Runnable接口。
是否可以认为,通过Runnable接口实现多线程的方式与Thread类没有任何关系?如果你认为有关系,那么Runnable实现类与Thread类是什么关系?请举例说明。
有关系;Thread类实现了Runnable接口,因此可以扩展了Thread即实现了Runnable接口。
采用“Runnable实现类”方式需要构造一个新的Thread对象,并把Runnable实现类的实例作为参数传入Thread的构造器中——Thread(task: Runnable)。
举例:public class TestRunnable {public static void main(String[] args) {Thread thread = new Thread(new AnTask());thread.start();}}class AnTask implements Runnable {Overridepublic void run() {//do something}}采用“扩展Thread类”方式无只需创建扩展Thread类的实例(无参构造)即可,但是不推荐使用这种方法,因为它将任务和运行任务的机制混在了一起。
将任务从线程中分离出来是比较好的设计。
举例:public class TestThread {public static void main(String[] args) {Thread thread = new AnThread();thread.start();}}class AnThread extends Thread {Overridepublic void run() {//do something}}2.通过Jdbc可以访问数据库。
很多情况下,既可以使用JDBC-ODBC驱动、也可以使用纯java驱动。
请问两种驱动方式都有何特点和优缺点?JDBC-ODBC桥接方式:就是搭建JDBC与ODBC之间的桥梁,(ODBC是微软的驱程,JDBC是甲骨文的驱程)你要在控制面板上指定数据源,通过数据源来建立连接。
这样程序的可移植性并不高,需要有ODBC数据源,几乎只能在Windows平台下运行,跨平台性较差。
而且当你换一台主机运行,必须先要去配置数据源,否则程序是无法运行的。
纯Java方式,即JDBC连接方式,就是通过java代码直接与数据库建立连接关系,所以执行效率很高,而且可移植性较好,Java本身跨平台性较好,所以不存在平台的障碍,也无需配置数据源。
早期的JDBC由于各大数据库厂商没有提供较完善的JDBC驱动器,所以JDBC-ODBC成为一个主要的连接方式,但是现在不存在这种问题,只有Access数据库必须采用JDBC-ODBC方式桥接。
请说明BorderLayout布局的特点。
如果希望在BorderLayout布局的容器中放入多于5个的控件,那么需要如何处理?嵌套JPanel当应用程序需要配置文件时,既可以采用Properties属性文件、也可以采用XML文件。
请简要分析它们各自的特点。
Properties属性文件缺点:1、无法直接使用中文编码2、无法表现树形结构、数组结构等复杂数据结构优点:1、书写简单方便2、程序读取简单XML文件优点:1.可拓展性xml中标记可以由程序员自己定义。
2.xml与容与形式的分离(1)显示方式嵌于数据当中(2)数据库搜索可以简单高效率的运行(3)XML是自我描述语言3.遵守严格的语法要求缺点:1.在数据中寻找信息非常困难(树状存储虽然搜索效率高但是插入和修改比较困难)2.数据自身逻辑不得不让位于HTML语言3.大数据量低效率4.XML文档做为数据提供者使用,没有数据库系统那样完善的管理功能5通信难,由于XML是元置标语言,任何人、公司和组织都可以利用它定义新的标准,这些标准间的通信就成了巨大的问题MVC是什么?请简要说明它的特点。
MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典,用于组织代码用一种业务逻辑和数据显示分离的方法,这个方法的假设前提是如果业务逻辑被聚集到一个部件里面,而且界面和用户围绕数据的交互能被改进和个性化定制而不需要重新编写业务逻辑MVC被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结构中。
请简述Java Swing/AWT的事件处理机制(说明事件源、事件监听器、以及它们的关系)。
Page.322请举例说明什么情况下需要使用多线程。
1、使用线程可以把占据时间长的程序中的任务放到后台去处理2、用户界面可以更加吸引人,这样比如用户点击了一个按钮去触发某些事件的处理,可以弹出一个进度条来显示处理的进度3、增加算法效率4、在一些等待的任务实现上如用户输入、文件读写和网络收发数据等,线程就比较有用了。
在这种情况下可以释放一些珍贵的资源如存占用等等。
得分二.__论述题__(本大题共__3__题,每题_15_分,共__45_分。
)1. Java集合框架中有List、Set、Map等接口,请分析回答以下问题:(1)请分别说明上述三个接口的实现类的特点。
(2)请分析比较一下如何选用上述三个接口的实现类,即什么情况下选用List实现类,什么情况下应该使用Set实现类,什么情况下使用Map实现类。
(3)使用接口变量操作集合对象有何优点和缺点?比如,以下两行代码都各自有何优缺点?List a = new ArrayList();//用List接口类型变量a来访问ArrayList对象ArrayList b = new ArrayList();//用ArrayList类型变量b来访问ArrayList对象(1)List特点:元素有放入顺序,元素可重复Map特点:元素按键值对存储,无放入顺序Set特点:元素无放入顺序,元素不可重复(注意:元素虽然无放入顺序,但是元素在set 中的位置是有该元素的HashCode决定的,其位置其实是固定的)(2)List实现类:元素可重复且有序的情况下;Set实现类:元素不可重复且无需的情况下;Map实现类:需要存储键值对的情况下。
(3)方式1:利用Java继承的机制,隐藏了List实现类的细节,让使用者无需考虑List接口的具体实现方式,有利于代码的维护(一个简单的例子,如需更换List的实现类,只需修改在创建对象的那一句代码),缺点就是无法调用ArrayList扩展的方法,例如方法trimToSize();方式2:直接把ArrayList这个实现类耦合进代码,不利于代码的维护。
优点就是可以调用ArrayList扩展的方法。
根据具体情况选择相应的方式。
2.关于OR映射,请回答以下问题:(1)什么是OR映射?OR映射有何用途?(2)请简要说明OR映射的基本原理。
(3)访问数据库既可以通过OR映射方式,也可以直接通过JDBC。
请分析比较两种访问方式的优缺点?(1)OR映射即对象关系映射,O为Object即面向对象程序中的对象,R为Relation即关系数据库。
使用OR映射的编程方法使得Java程序员可以使用对象编程思维来操纵数据库,使得程序设计得更加精炼易于理解与修改,把复杂的SQL语句与业务逻辑解耦,使得程序更符合高聚低耦合的设计思想。
(2)创建与数据库表对应的实体类(Entity或Object),设置相应的域于数据库表的属性做映射,然后设置get/set方法,然后封装操作SQL语句(查删改)到对应的DAO(Data Access Objects 数据访问对象)中,由这两种对象构成即为数据持久层,封装了底层数据操作细节,提供相应的接口给业务逻辑层使用,分工明确,体现了高聚低耦合的思想。
(3) OR映射:采用低耦合高聚的设计思想,分别封装了数据、数据访问以及业务逻辑,虽然程序设计会变得更为复杂,但是从长期的扩展性、健壮性、可理解性来说,这样的付出是值得的,尤其是在大型项目中显得尤为必要。
JDBC:直接使用JDBC接口操纵数据库,使得程序模式简单,而且效率会比OR映射略高,更易于性能和存储的优化等,但是在复杂的项目中使得数据库操作和业务逻辑耦合在一起,变的难以调试,所以适合小型项目、业务逻辑简单的项目。
3. 关于Java网络编程,请回答以下问题:(1)在使用TCP协议进行网络编程时,需要使用哪些关键类(包括侦听、数据传送时所涉及的核心类)?并请简要描述这些类的用途。
(2)在使用UDP协议进行网络编程时,需要使用哪些关键类(包括侦听、数据传送时所涉及的核心类)?并请简要描述这些类的用途。
(3)请简要说明上述两种网络通信方式的各自优缺点。
(1)ServerSocket:此类实现服务器套接字。
服务器套接字等待请求通过网络传入。
它基于该请求执行某些操作,然后可能向请求者返回结果。
Socket:此类实现客户端套接字(也可以就叫“套接字”)。
套接字是两台机器之间的通信端点。
(2)DatagramSocket: 此类表示用来发送和接收数据报包的套接字。
DatagramPacket: 此类表示UDP数据报包。
(3)1、TCP是基于连接的,UDP是基于无连接2、对系统资源的要求(TCP较多,UDP少)3、UDP程序结构较简单4、流模式与数据报模式5、TCP保证数据正确性,UDP可能丢包,TCP保证数据顺序,UDP不保证得分三.__编程题__(本大题共__2__题,每题__10_分,共___20__分。
)1. 设计一个线程类,该线程类可以执行长时间任务,并且可以被中途终止。
要求如下:该线程类的类名为TaskThread,为Thread的子类。
该线程类中有一个excuteTask方法(为实例方法),该方法用于模拟一种操作(比如压缩文件操作),具体实现代码可以用注释方式说明,无需实现。
线程启动执行时,在run方法中可以循环调用上述excuteTask方法。
换言之,线程所执行的长时间任务就是对excuteTask方法的循环调用。
该线程类有一个stopTask方法(为实例方法)。
stopTask方法被调用后,可以终止线程的执行(即终止循环)。
public class TaskThread extends Thread {private boolean isExit;//退出标志public void excuteTask(){//do somethingtry {Thread.sleep(10);} catch (InterruptedException e) {e.printStackTrace();}System.out.println("do something");}Overridepublic void run(){System.out.println("TaskThread begin");while(!isExit){this.excuteTask();}System.out.println("TaskThread stop");}public void stopTask(){this.isExit = true;}public static void main(String[] args) {TaskThread taskThread = new TaskThread();taskThread.start();try {Thread.sleep(100);} catch (InterruptedException e) {e.printStackTrace();}taskThread.stopTask();}}实现拨号器程序,界面如下:设计要求如下:设计一个MyTelephone类,该类从JFrame继承。