字节流与字符流练习题
java练习题_附选择填空答案
涉及到AWT的不清楚,自己看书吧。
不保证全部正确2010-2011JAVA期末试卷一、填空题(每空2分,共20分)1.Java源程序的扩展名是,经过编译后的程序的扩展名是。
java class 2.Socket通常也称为,用于描述和。
3.线程的优先级在至之间,数值越大1-10 优先级越低4.构造方法是一种特殊的成员方法,构造方法名与相同类名5.Java语言只允许单继承,指每个类只能有一个。
父类二、选择题(每题2分,共50分)1.下列哪个概念是面向对象和面向过程程序设计所共有的() BA、继承B、流程控制C、抽象D、封装2.以下关于执行Java小程序的论述错误的是:() AA、可以通过浏览器调用嵌入了Java小程序的HTML文档B、可以通过appletviewer.exe调用嵌入了Java小程序的HTML文档C、可以通过java.exe调用嵌入了Java小程序的HTML文档D、可以在Java集成开发环境中调用嵌入了Java小程序HTML文档3.符合对象和类关系的是:() DA、人和老虎B、书和汽车C、楼和土地D、松树和植物4.关于选择结构下列哪个说法正确?()BA.if语句和else语句必须成对出现B.if语句可以没有else语句对应C.一个if语句只能有一个else if语句与之对应D.else if结构中必须有default语句5.while循环和do…while循环的区别是:()DA.没有区别,这两个结构任何情况下效果一样B.while循环比do…while循环执行效率高C.do…while循环执行次数可能为0D.while循环执行次数可能为06.关于for循环和while循环的说法哪个正确?()BA.while循环先判断后执行,for循环先执行后判断。
B.while循环判断条件一般是程序结果,for循环的判断条件一般是非程序结果C.两种循环任何时候都不可以替换D.两种循环结构中都必须有循环体,循环体不能为空7.下列修饰符中与访问控制无关的是()DA.private B.publicC.protected D.final8.方法内的形参:() BA.必须定义多个形参B.可以没有C.至少有一个D.只能是简单变量9.throws的作用:()AA.表示方法可能会抛出异常B.表示后面是方法的输出量C.方法的标志,每个方法都必须有D.没有意义10.在Java语言中,整型常量123占用的存储字节数是:()A.1B.2C.4 D.811.关于对象成员占用内存的说法哪个正确?()A.同一个类的对象共用同一段内存B、同一个类的对象使用不同的内存段,但静态成员共享相同的内存空间C.对象的方法不占用内存D.以上都不对12.return语句:()A.只能让方法返回数值B.方法都必须含有C.方法中可以有多句return D.不能用来返回对象13.下列说法哪个正确?()A、一个程序可以包含多个源文件B、一个源文件中只能有一个类C、一个源文件中可以有多个公共类D、一个源文件只能供一个程序使用14.关于方法main()的说法哪个正确?()A.方法main()只能放在公共类中B. main()的头定义可以根据情况任意更改C.一个类中可以没有main()方法D.所有对象的创建都必须放在main()方法中15.构造函数何时被调用?()A、创建对象时B、类定义时C、使用对象的方法时D、使用对象的属性时16.抽象方法:()A、可以有方法体B、可以出现在非抽象类中C、是没有方法体的方法D、抽象类中的方法都是抽象方法17.关于继承的说法正确的是:()A、子类将继承父类所有的属性和方法。
javase练习题
javase练习题一、基础知识篇1. Java基本数据类型有哪些?分别写出它们的默认值。
2. 什么是封装?简述封装的优点。
3. 请写出Java中的四种访问修饰符,并说明它们的访问权限。
4. 什么是构造方法?它与普通方法的区别是什么?5. 在Java中,如何实现方法的重载和重写?二、面向对象篇2. 如何实现一个简单的Java类,包含两个属性和一个方法?3. 简述Java中的继承机制及其作用。
4. 什么是接口?与抽象类有什么区别?5. 请举例说明Java中的多态性。
三、集合框架篇1. Java集合框架中常用的集合类有哪些?2. 请简述ArrayList和LinkedList的区别。
3. 什么是HashMap?它的工作原理是什么?4. 请解释HashSet和TreeSet的区别。
5. 如何遍历一个List集合?四、异常处理篇1. 什么是异常?Java中的异常分为哪几类?2. 请举例说明trycatchfinally语句的使用方法。
3. 什么是自定义异常?如何创建和使用自定义异常?4. 请简述Java异常处理机制的作用。
int a = 10;int b = 0;int result = a / b;五、IO流篇1. 请简述Java IO流的分类。
2. 如何实现文件复制功能?3. 请解释字节流和字符流的区别。
4. 什么是序列化和反序列化?如何实现?5. 请举例说明Java中的文件操作。
六、多线程篇1. 什么是线程?线程和进程有什么区别?2. 请简述线程的生命周期。
3. 如何创建一个线程?有哪几种方式?4. 什么是线程同步?为什么需要线程同步?5. 请解释线程池的概念及其作用。
七、网络编程篇1. 请简述TCP和UDP协议的区别。
2. 如何实现一个简单的Socket通信?3. 什么是URL?如何解析一个URL?4. 请简述HTTP协议的工作原理。
5. 如何实现一个简单的HTTP服务器?八、Java新特性篇1. 请列举Java 8中的几个新特性。
高职高专计算机专业考试试题Java基础入门(第二版)期末考试试卷二
姓名:__________________年级专业:__________________ 学号:__________________凡年级专业、姓名、学号错写、漏写或字迹不清者,成绩按零分记。
…………………………密………………………………封………………………………线………………………………《Java 基础入门》期末考试试卷单选题(每题2分,共计30分)1. 下面关于字节流缓冲区的说法错误的是( )A 、使用字节流缓冲区读写文件是一个字节一个字节的读写。
B 、使用字节流缓冲区读写文件时,可以一次性读取多个字节的数据。
C 、使用字节流缓冲区读写文件,可以大大的提高文件的读写操作。
D 、字节流缓冲区就是一块内存,用于存放暂时输入输出的数据。
2. 假设在E 盘下的cn 文件夹中有文件abc.txt ,则下列代码的运行结果为( )class Example {public static void main(String[] args) {File file = new File("E:\\cn"); // 这是一个代表目录的File 对象if (file.exists()) {System.out.println(file.delete()); }} }A 、false 文件夹删除不成功,abc.txt 删除不成功B 、false 文件夹删除不成功,abc.txt 删除成功C 、true 文件夹删除成功D 、true 文件夹删除不成功,abc.txt 删除成功3. 请阅读下面的程序public class Test {public static void main(String[] args) {int m = 37;int n = 13;while (m != n) {while (m > n) {m -= n; }while (m < n) {n -= m; } }姓名:__________________年级专业:__________________ 学号:__________________凡年级专业、姓名、学号错写、漏写或字迹不清者,成绩按零分记。
(完整版)5Java第五单元练习题-输入流与输出流
5 Java 输入流与输出流5.1 单项选择题1.实现字符流的写操作类是( A . FileReader B . Writer C)。
. FileInputStream D. FileOutputStream2. 实现字符流的读操作类是( )。
A . FileReaderB . WriterC . FileInputStreamD . FileOutputStream3.凡是从中央处理器流向外部设备的数据流称为() A. 文件流 B. 字符流 C. 输入流 D. 输出流4.构造 BufferedInputStream 的合适参数是哪一个?( ) A . FileInputStream B . BufferedOutputStreamC . FileD . FileOuterStream5.在编写 Java Application 程序时,若需要使用到标准输入输出语句,必须在程序的开头写上( )语句。
D . import java.awt.Graphics ;6.下列流中哪个不属于字符流?( A . InputStreamReaderC . FilterReader 7.流的传递方式是() A. 并行的B. 串行的C. 并行和串行D. 以上都不对8.字符流与字节流的区别在于( )A. 前者带有缓冲,后者没有B. 前者是块读写,后者是字节读写C. 二者没有区别,可以互换使用A . import java.awt.* ;B import java.applet.Applet ;C . import java.io.* ; )B . BufferedReaderD . FileInputStream2D. 每次读写的字节数不同9.下列流中哪个不属于字节流 A . FileInputStream B . BufferedInputStream C. FilterInputStream D. InputStreamReader10.如果需要从文件中读取数据,则可以在程序中创建哪一个类的对象()A . FileInputStreamB . FileOutputStreamC . DataOutputStreamD . FileWriter11. 下列哪一个 import 命令可以使我们在程序中创建输入/ 输出流对象()A .import java.sql.*;B . import java.util.*;C . import java.io.*;D . import .*;12.下面的程序段创建了 BufferedReader 类的对象in ,以便读取本机 c 盘my 文件夹下的文件 1.txt 。
(完整版)IO流题目
狂翔IT工作室IO流章节题目一.选择题1.java语言提供处理不同类型流的类的包是(D)a)java.sql b) java.util c) java.math d) java.io2.不属于java.io包中的接口的一项是(c)a)DataInput b) DataOutput c) DataInputStream d) ObjectInput3.java.io包中提供的用于筛选文件名的接口是(d)a)DataInput b) DataOutputStream c)RandomAccessFile d) FileNameFilter4.下列中,哪一个是filterInputStream类构造方法的有效参数ca)无参数b)OutputStream对象c) InputStream对象d)RandomAccessFile对象5. ByteArrayOutputStream将下列哪一项作为输出流 ca) 字符b)字节c)字节数组D)对象6. 下列流中哪一个使用了缓冲区技术AA.BuffereOutputStream B. FileInputStreamC. DataOutputStreamD.FileReader7. 下列哪个包中含有压缩文件输入流ZipInputStream类BA.java.ioB. java.util.zipC.java.util.jarD.java.awt8. 要在磁盘上创建一个文件,可以使用哪些类的实例A.FileB.FileOutputStreamC.RandomAccessFileD.以上都对9.下列字节输入流中,哪一个不能够被实例化BA.FileInputStreamB.FilterInputStreamC.ByteArrayInputStreamD.ObjectInputStream10. 能对读入字节数据进行java基本数据类型判断过滤的类是(C)A. PrintStreamB.DataOutputStreamC.DataInputStreamD.BuffereInputStream11. 使用下列哪一个类可以实现在文件的任意一个位置读写一个记录A.RandomAccessFileB.FileReaderC.FileWriterD.FileInputStream12.通常情况下,下列哪一个类的对象可以作为BufferedReader类的构造函数的参数A.InputStreamReaderB.PrintStreamC.OutputStreamReaderD.PrintWriter13. 若要创建一个新的含有父目录的目录,应该使用下列哪一个类的实例A.RandomAccessFileB.FileOutputStreamC.FileD.以上都对14. 流的概念是由以下哪个语言最先引的A.CB.C++C.JavaD.Basic15. 下列哪一个不属于计算机常用的外部设备A.显示器B.网络C.内存D.键盘16. 与InputStream流相对应的Java系统的标准输入对象是A.System.inB.System.outC.System.errD.System.exit()17. 下列File类的方法中,哪一个用于返回文件的相对的文件名A.getCanonicalPath()B.getAbsolutePath()C.getCanonicalFile()D.getAbsoluteFile()18. 下列哪个不属于j2sdk1.4 提供的新I/O功能A.内存映射B.文件锁定C.字符及编码D.阻塞I/O19.下列选项中,哪一个属于输出流A.从打印机流向控制器的数据流B.从键盘流向内存的数据流C.从内在流向控制器的数据流D.从内存流向网络的数据流20.FileOutputStream类的父类是()A.FileB.FileOutputC.OutputStreamD.InputStream 二.填空题1. Java的I/O流包括字节流、字符流、文件流、对象流和管道流2. 按照流的方向来分,I/O流包括输入和输出流3. 流是一个流动的数据从流向4. FileInputStream实现对磁盘文件的读取操作,在读取字符的时候,它一般与InputStreamReader 和BufferedReader 一起5. 向DataOutputStream对象dos 的当前集团处写入一个保存在变量f中的浮点数的语句是dos.writeDouble(f)6. java通过过滤流对I/O访问提供同步处理机制7. FileChannel类为磁盘文件映射入内存提供了一个通道8. 输入输出在计算机中有两个主要作用:采集数据和提供数据处理结果。
java习题及答案第9章 习题参考答案
第9章习题解答1.与输入/输出有关的流类有哪些?答:与输入/输出有关的流类主要有InputStream、OutputStream和Reader、Writer类及其子类。
除此以外,与流有关的类还有File类、FileDescriptor类、StreamTokenizer类和RandomAccessFile类。
2.字节流与字符流之间有哪些区别?答:字节流是面向字节的流,流中的数据以8位字节为单位进行读写,是抽象类InputStream和OutputStream的子类,通常用于读写二进制数据,如图像和声音。
字符流是面向字符的流,流中的数据以16位字符(Unicode字符)为单位进行读写,是抽象类Reader和Writer的子类,通常用于字符数据的处理。
3.什么是节点流?什么是处理流或过滤流?分别在什么场合使用?答:一个流有两个端点。
一个端点是程序;另一个端点可以是特定的外部设备(如键盘、显示器、已连接的网络等)和磁盘文件,甚至是一块内存区域(统称为节点),也可以是一个已存在流的目的端。
流的一端是程序,另一端是节点的流,称为节点流。
节点流是一种最基本的流。
以其它已经存在的流作为一个端点的流,称为处理流。
处理流又称过滤流,是对已存在的节点流或其它处理流的进一步处理。
对节点流中的数据只能按字节或字符读写。
当读写的数据不是单个字节或字符,而是一个数据块或字符串等时,就要使用处理流或过滤流。
4.标准流对象有哪些?它们是哪个类的对象?答:标准流对象有3个,它们是:System.in、System.out和System.err。
System.in 是InputStream类对象,System.out和System.err是PrintStream类对象。
5.顺序读写与随机读写的特点分别是什么?答:所谓顺序读写是指在读写流中的数据时只能按顺序进行。
换言之,在读取流中的第n个字节或字符时,必须已经读取了流中的前n-1个字节或字符;同样,在写入了流中n-1个字节或字符后,才能写入第n个字节或字符。
Java练习题(试卷)
【程序代码】
class Base {
public Base(int i) {
System.out.println("Call Constructor of Base Class, " + i);
}
}
class Test extends Base {
private int b;
public Test(int a, int b) {
如下 java 源程序文件中,定义了 Bicycle 类及其子类 MountainBike 类,Bicycle 类的成员变量 model 只能被类自身的方法所访问。该文件中“/*$1*/”和“/*$2*/”行是需要补充的语句,请仔细阅读程序, 补充相应的语句,使整个程序能够正常运行。(注意: 不改动程序的结构,不得增行或删行)
J_SubClass a = new J_SubClass();
}
}
A、不能通过编译,因为类 J_Test 没有定义无参数的构造方法
B、不能通过编译,因为类 J_SubClass 没有定义无参数的构造方法
C、不能通过编译,因为没有实现 J_SubClass(int i)的构造方法
D、可以成功通过编译
import java.awt.*;
class MyClass { }
public class MyClass { }
Java 练习题 1(第 2 页 共 14 页)
13.当需要在文件中写入字符而不是字节时,在下面的类中最好选用( B )类。
A、java.io.RandomAccessFile
B、java.io.PrintWriter
C、float fun(float a) { }
(完整版)io流课后练习题
第十一章io流练习题一、选择题1. 以下关于File 类说法正确的是( B.C ):A: 一个File 对象代表了操作系统中的一个文件或者文件夹B: 可以使用File 对象创建和删除一个文件C: 可以使用File 对象创建和删除一个文件夹D: 当一个File 对象被垃圾回收时,系统上对应的文件或文件夹也被删除2. 有如下代码,正确答案是(D ):public class TestFile{public static void main(String args[]){File file = new File(“chp13/corejava.txt”);}}A. corejava.txt 文件在系统中被创建B. 在windows 系统上运行出错,因为路径分隔符不正确C. corejava.txt 文件在系统中没有被创建D. 如果corejava.txt 文件已存在,则抛出一个异常3. 文件输出流的构造方法是public FileOutputStream(String name,Boolean append) throws FileNotFoundException,当参数append的值为true时,表示( B )A: 创建一个新文件B: 在原文件的尾部添加数据C: 覆盖原文件的内容D: 在原文件的指定位置添加数据4. 下面的程序段的功能是( B )File file1=new File("e:\\xxx\\yyy");file1.mkdir();A: 在当前目录下生成子目录:\xxx\yyy B: 生成目录:e:\xxx\yyyC: 在当前目录下生成文件xxx.yyy D: 以上说法都不对5.下列不是java的输入输出流的是(A.D )A: 文本流B: 字节流C: 字符流D: 文件流3.凡是从中央处理器或者是内存流向外部设备的数据流称为(C)A: 文件流B: 字符流C: 输入流D: 输出流4.下列属于文件输入输出类的是()A: FileInputStream和FileOutputStreamB: BufferInputStream和BufferOutputStreamC: PipedInputStream和PipedOutputStreamD. 以上都是5.下列叙述中,错误的是( )A: File类能够存储文件B: File类能够读写文件C: File类能够建立文件D: File类能够获取文件目录信息6.下列叙述中,正确的是( )A: Reader是一个读取字符文件的接口B: Reader是读取数据文件的抽象类C: Reader是一个读取字符文件的抽象类D: Reader是读取字节文件的一般类7.字符输出流类都是( )抽象类的子类A: FilterWriter B: FileWrite C: Writer D: OutputStreamWrite 8. 下面关于FileInputStream 类型说法正确的是():A: 创建FileInputStream 对象是为了读取硬盘上的文件B: 创建FileInputStream 对象时,如果硬盘上对应的文件不存在,则抛出异常C: 利用FileInputStream 对象可以创建文件D: 以上说法都不对二、简答题:1.简述什么是流2.简述Java IO流层次结构3.Java中的IO流桥接器类有哪些4.使用字符流的优势是什么5.简述对象的序列化与反序列化6.要想从某个文件中获得一个字符输出流,则至少有以下三种方式分别是:利用FileWriter 类、利用PrintWriter 类、利用FileOutputStream 类,并通过OutputStreamWriter 类获得Writer,请简述这三种方式获得Writer 的区别。
计算机网路基础第三章习题
计算机网路基础第三章习题2.The following character encoding is used in a data link protocol: A: ***-***** B: ***-***** FLAG: ***-***** ESC: ***-*****Show the bit sequence transmitted(in binary) for the four-character frame A B ESC FLAG when each of the following framing methods is used: (a) Byte count.(b) Flag bytes with byte stuffing.(c) Starting and ending flag bytes with bit stuffing.(a)***-***** ***-***** ***-***** ***-***** ***-*****(b) ***-***** ***-***** ***-***** ***-***** ***-***** ***-***** ***-***** ***-*****(c) ***-***** ***-***** ***-*****1 ***-*****0 ***-*****0 ***-*****7. In the textbook, the authors show that for a channel with error rate 10^-6, error detecting based retransmission is more efficient than error correcting (see 27th slide). Please give ranges of the channel error rate in which error correcting is more efficient, considering only for blocks (1000 bits) with at most 1 bit error.Suppose the error rate is x. N=1/(x*1000);For error correcting, it need 10*N bit of checkbits. For error detecting it need 2001bit10*N2001, 10/(x*1000)2001, x=4.9*10^-68. Hamming code is an effective way for error correcting. Show that the number of check bits(i.e. r) in the Hamming codes described in the textbook(e.g., Fig.3-6) (almost) achieves the low bound of Eq (3-1).Eq(3-1): (m+r+1)≤2^r In figure 3-6, m+r = 11 So 12≤2^r, r=4.So the number of check bits is 4.9. Suppose you have the following 12-bit message: ***-*****1111(a) Numbering bits from right to left (ie least-significant bit on the right), insert check bits according to to Hamming’s 1-bit error correction system. Indicate which bits are check bits and which are message bits.(b) Hamming’s scheme only corrects 1-bit errors. Since it’ s a distance 3 code, it could also be used to detect 2-bit errors. Describe a 3-bit error (3 *1-bit errors) in the above codeword affecting only message bits (not check bits) that would be undetected (and of course uncorrected). Be sure to describe how and why the algorithm fails.(a)cherk bits will be insert in the 1 2 4 8 16. message bits are 3 56 7 9 10 11 12 13 14 15 17.(b)to detect 3-bit error,the hamming distance need to be 4.to correct 3-bit error,the hamming distance need to be 7. So the algorithm fails.16.Consider an original frame ***-*****1011. The generator polynomial x^4+x+1, show the converted frame after appending the CRC.The remainder is x^2 + x + 1.22.A 3000-km-long T1 trunk is used to transmit 64-byte frames. How many bits should the sequence numbers be for protocol 5 and protocol 6 respectively? The propagation speed is 6usec/km.T1:1.536Mbps. So transmit 64-byte frames need 0.3ms. The propogation time is 3000*6 = *****usec = 18ms. Start -Arrive:18+0.3=18.3ms Acknowledgement:18 ms Time=18+18.3=36.3ms36.3/0.3=121 frames [ to fill the pipe ] So 7-bit sequence numbers are needed.32.Frames of 1000 bits are sent over a 1-Mbps channel using a geostationary satellite whose propagation time from the earth is 270msec. Acknowledgements are always piggybacked onto data frames. The headers are very short. Three-bit sequence numbers are used. What is the maximum achievable channel utilization for(a) Stop-and-wait? (b) Protocol 5? (c) Protocol 6?1000*1mbps=1s. start : t=0msecthe first frame has been fully transmitted : t = 1 msec, the first frame has fully arrived : t = 271 msecthe first frame's acknowledgement has been fully sent : t = 272 msec acknowledgement has fully arrived : t = 542 msec So the cycle is 542 msec.(a) k = 1, efficiency = 1/542 = 0.18%. (b) k = 7, efficiency = 7/542 = 1.29%. (c) k = 4, efficiency = 4/542 = 0.74%pute the fraction of the useful data bandwidth for protocol 6 on a heavily loaded 50-kbps satellite channel with data frames consisting of 40 header and 3960 data bits. Assume that the signal propagation time from the earth to the satellite is 270 msec. ACK frames never occur. NAK frames are 40 bits. Theerror rate for data frames is 1%, and the error rate for NAK frames is negligible. The sequence numbers are 3 bits.With a 50-kbps 8-bit sequence numbers, the pipe is always full. Retransmissions per frame = 0.01.Each good frame: 40 header bits, 1% of 4000 bits, a 40-bit NAK once every 100 frames. The total overhead is 80.4 bits per 3960 data bits, giving 80.4/(3960 ??80.4) ??1.99%.。
计算机网络原理第五章、第六章习题
[判断题]1.UDP是面向字节流的,TCP是面向报文的。
(错)[单选题]2.端口号的作用:(D)A.流量控制B.ACL过滤C.建立连接D.对应用层进程的寻址[多选题]3.以下说法正确的是:(ACD)A.端口号划分为熟知端口号,登记端口号以及短暂端口号三种。
B.登记端口号和短暂端口号是客户端使用的端口号。
C.端口号是一个16位的正整数,范围是0~65535 。
D.熟知端口号数值一般为0~1023 。
[单选题]4.TCP和UDP协议均提供了()能力。
(D)A.连接管理B.差错校验和重传C.流量控制D.端口寻址[单选题]5.在TCP协议中,用于进行流量控制的字段为()。
(C)A.端口号B.序列号C.窗口D.应答编号[单选题]6.浏览器向Web服务器发送了一个报文,其TCP段不可能出现的端口组合为()。
(B)A.源端口号为2345,目的端口号为80B.源端口号为80,目的端口号为2345C.源端口号为3146,目的端口号为8080D.源端口号为6553,目的端口号为5534[单选题]7.TCP使用3次握手协议建立连接,以防止();当请求方发出SYN连接请求后,等待对方回答()以建立正确的连接;当出现错误连接时,响应()。
(C)A.产生错误的连接;FIN,ACK;RST,ACKB.无法连接;SYN,ACK;PSH,ACKC.产生错误的连接;SYN,ACK;RST,ACKD.无法连接;FIN,ACK;SYN,ACK[单选题]8.一个UDP用户数据报的数据字段为8192字节,在数据链路层要使用以太网来传送。
以每片数据长度为1480B,应当划分为()个IP数据报片;最后一个分片的字节序号为()。
(B)A.5;6720B.6;7400C.5;7400D.6;6720[单选题]9.一个UDP用户数据报的数据字段为8192字节,在数据链路层要使用以太网来传送。
以每片数据长度为1440B,应当划分为()个IP数据报片;最后一个分片的字节序号为()。
