说明:这里是怀化学院java考试平台题库里的题,为了方便将题整理出来,但题库还在不断更新中,故此集合整理的题最新截止至发布时间,我将正确答案用红色粗体标注,但这里大概有226道选择题,我将题集分为四个部分,这里是第二部分(61-120),由于题量较大,整理时难免会将某些题的答案标错,如有错误,请各位读者给出
Java选择题集合目录:
-
在以下什么情况下,构造方法会被调用( )
A、创建对象时
B、使用对象的变量时
C、调用对象方法时
D、类定义时 -
下面哪种类型的文件可以在Java虚拟机中运行。( )
A、.jre
B、.class
C、.java
D、.exe -
在Java图形用户界面编程中,若显示一些不需要修改的文本信息,一般是使用的组件是( )。
A、JTextArea
B、JButton
C、JTextField
D、JLabel -
JFrame默认的布局管理器是( )
A、GridLayout
B、FlowLayout
C、CardLayout
D、BorderLayout -
JPanel默认的布局管理器是( )
A、GridLayout
B、BorderLayout
C、CardLayout
D、FlowLayout -
在Java中,一般菜单格式包含下列对象( )
A、JMenuBar
B、JMenuBar、JMenu、JMenuItem
C、JMenuItem
D、JMenu -
Swing与AWt的区别不包括( )
A、Swing没有本地代码;
B、Swing是由纯Java实现的轻量级构件;
C、Swing不依赖操作系统的支持;
D、Swing支持图形用户界面; -
下列数组定义正确的是( )
A、int[] a;
B、int[] a[];
C、int a[];
D、 int[][] a; -
执行完代码"int[]x=new int[25];"后以下说明正确的是( )
A、x[24]未定义
B、x[25]为0
C、x[24]为0
D、x[0]为空 -
如定义对象 StringBuffer ch = new StringBuffer("Shanghai") 则ch.length()的值为( )
A、9
B、23
C、7
D、8 -
下列语句会造成数组new int[10]越界是( )
A、a[9]=10;
B、--a[9]
C、for(int i=0;i<=10;i++) a[i]++;
D、a[0]+=9; -
关于数组作为方法的参数时,向方法传递的是( )
A、数组自身
B、数组的元素
C、数组的引用
D、.数组的栈地址 -
关于数组默认值,错误的是( )
A、float--0.0f
B、Boolean--true
C、char--'u0000'
D、int-- 0 -
当访问无效的数组下标时,会发生( )
A、中止程序
B、抛出异常
C、系统崩溃
D、直接跳过 -
数组a的第三个元素表示为( )
A、a[2]
B、a[3]
C、a(2)
D、a(3) -
下面不是创建数组的正确语句是( )
A、float [][]f=new float[6][];
B、float f[]=new float[6];
C、float f[][]=new float[6][6];
D、float f[][]=new float[][6]; -
下列初始化字符数组的语句中,正确的是( )
A、 char str[5]={"hi"};
B、char str[5]="hello";
C、char str[]={'h','e','l','l','o','\0'};
D、char str[100]=""; -
定义了int型二维数组a[6][7]后,数组元素a[3][4]前的数组元素个数为( )。
A、25
B、17
C、24
D、 18 -
下面的二维数组初始化语句中,正确的是( )
A、 int a[2][]= {{1,2},{3,4}};
B、int a[][2]={{1,2},{3,4}};
C、float a[2][2]={0};
D、 float b[2][2]={0.1,0.2,0.3,0.4}; -
定义了一维int型数组a[10]后,下面错误的引用是( )
A、a[0]=5*2;
B、a[0]=1;
C、a[1]=a[2]*a[0];
D、a[10]=2; -
下面正确的初始化语句是( )。
A、char str[]={'hello'};
B、char str[]={'h','e','l','l','o'};
C、char str[]="hello";
D、char str[100]="hello"; -
给出下列代码,则数组初始化中下列选项中不正确的是( )
byte[] array1,array2[];
byte array3[][];
byte [][] array4;
A、array3=array4
B、array2=array3
C、array2=array4
D、array2 = array1 -
使用流式套接字编程时,为了向对方发送数据,则需要使用哪个方法( )
A、getOutputStream()
B、getLocalPort()
C、getInputStream()
D、getInetAddress() -
当使用客户端套接字Socket创建对象时,需要指定( )
A、服务器端口和文件
B、服务器地址和文件
C、服务器名称和文件
D、服务器主机名称和端口 -
ServerSocket的监听方法accept()的返回值类型是( )
A、Socket
B、Object
C、DatagramSocket
D、void -
java程序中,使用TCP套接字编写服务端程序的套接字类是( )
A、DatagramSocket
B、Socket
C、ServerSocket
D、DatagramPacket -
为了获取远程主机的文件内容,当创建URL对象后,需要使用哪个方法获取信息( )
A、openStream()
B、getPort()
C、openConnection()
D、getHost -
InetAddress类中哪个方法可实现正向名称解析?( )
A、getByName()
B、isReachable()
C、getHosstName()
D、getHostAddress() -
Java提供的类进行有关Internet地址的操作类型是( ) .
A、Socket
B、InetAddress
C、DatagramSocket
D、ServerSocket -
在客户/服务器通信模式中,客户与服务器程序的主要任务是什么?( )
A、如果客户程序和服务器都会保证发送的数据不会在传输途中丢失
B、客户程序发送请求,并接收服务器的响应
C、 服务器程序接收并处理客户请求,然后向客户发送响应结果
D、 客户程序在网络上找到一条到达服务器的路由 -
一个服务器进程执行以下代码:
ServerSocket serverSocket=new ServerSocket(80);
Socket socket=serverSocket.accept();
int port=socket.getPort();以下哪些说法正确?( )
A、socket.getPort()方法返回客户端套节字占用的本地端口
B、当serverSocket.accept()方法成功返回,就表明服务器进程接收到了一个客户连接请求
C、服务器进程占用80端口
D、socket.getPort()方法返回服务器进程占用的本地端口,此处返回值是80 -
Java网络程序位于TCP/IP参考模型的哪一层?( )
A、网络层互联层
B、主机-网络层
C、传输层网络
D、应用层 -
下列有关线程的叙述中正确的一项是( )
A、使用start()方法可以使一个线程成为可运行的,但是它不一定立即开始运行
B、一个线程可能因为不同的原因而终止并进入终止状态
C、一旦一个线程被创建,它就立即开始运行
D、当一个线程因为抢占机制而停止运行时,它被放在可运行队列的前面 -
下列说法中错误的一项是( )
A、共享数据的所有访问都必须使用synchronized加锁
B、共享数据的访问不一定全部使用synchronized加锁
C、所有的对共享数据的访问都是临界区
D、临界区必须使用syschronized标识 -
下列说法中错误的一项是( )
A、java中每一个线程都有自己的名字
B、线程创建时已经确定了提供线程体的对象
C、在程序中通过调用 Thread类的run()方法创建线程对象
D、java的线程体由Thread类的run()方法定义 -
下列说法中错误的一项是( )
A、可串行化的类中的静态变量可以不被串行化
B、对象串行化使用java语言提供的默认机制
C、private数据访问权限能够限制数据不被串行化
D、 可串行化的类必须实现Serializable接口 -
下列关于Thread类提供的线程控制方法的说法中,错误的一项是( )
A、currentThread()方法返回当前线程的引用
B、线程A通过调用interrupt()方法来中断其阻塞状态
C、在线程A中执行线程B的join()方法,则线程A等待直到B执行完成
D、若线程A调用方法isAlive()返回值为true,则说明A正在执行中 -
下列说法中错误的一项是( )
A、一个线程是一个Thread类的实例
B、线程操作的数据来自Runnable实例
C、线程从传递给Runnable实例run()方法开始执行
D、新建的线程调用start()方法就能立即进入运行状态 -
下列说法中错误的一项是( )
A、新建的线程默认情况下属于其父线程所属的线程组
B、Java中的第一个线程都属于某个线程组
C、线程只能在其创建时设置所属的线程组
D、线程创建之后,可以从一个线程组转移到另一个线程组 -
试题5:下列哪一个不属于java线程模型的组成部分( )
A、代码所操作的数据
B、.虚拟CPU执行的代码
C、执行流
D、虚拟的CPU -
下列哪个方法可以使线程从运行状态进入其他阻塞状态( )
A、yield
B、start
C、wait
D、sleep -
下列说法中错误的一项是( )
A、线程是一个程序的单个执行流
B、多线程用于实现并发
C、多线程是指一个程序的多个执行流
D、 线程就是程序 -
当要将一文本文件当作一个数据库访问,读完一个纪录后,跳到另一个纪录,它们在文件的不同地方时,一般使用( )类访问。
A、BufferedOutputStream
B、RandomAccessFile
C、PipedOutputStream
D、FileOutputStream -
当把一个程序、线程或代码段的输出连接到另一个程序、线程或代码段的输入时,应使用的流是( )
A、PipedOutputStream
B、DataOutputStream
C、FileOutputStream
D、BufferedOutputStream -
当处理的数据量很多,或向文件输出很多次小数据,一般使用的流是( )
A、 BufferedOutputStream
B、FileOutputStream
C、PipedOutputStream
D、DataOutputStream -
下列不属于FileInputStream输入流的read()成员函数的是( )
A、int read()
B、int read(byte b[],intoffset,int len)
C、int read(int line)
D、int read(byte b[]) -
下列属于能操作文件输入输出类的是( )
A、FileInputStream和FileOutputStream
B、全部都是
C、PipedInputStream和PipedOutputStream
D、BufferInputStream和BufferOutputStream -
获取一个不包含路径的文件名的方式为( )
A、String getParent()
B、String getName()
C、String getAbslutePath()
D、String getPath() -
凡是从中央处理器流向外部设备的数据流称为( )
A、输入流
B、文件流
C、字符流
D、输出流 -
下列不是Java的输入输出流的是( )
A、文本流
B、字符流
C、文件流
D、字节流 -
流的传递方式是( )
A、并行的和串行的
B、无正确选项
C、并行的
D、串行的 -
哪个关键字可以抛出异常? ( )
A、try
B、throw
C、throws
D、finally -
当方法遇到异常又不知如何处理时,下列哪种说法是正确的( )
A、声明异常
B、抛出异常
C、嵌套异常
D、捕获异常 -
在异常处理中,如释放资源、关闭文件、关闭数据库等由( )来完成
A、throw子句
B、catch子句
C、finally子句
D、try子句 -
对于catch子句的排列,下列哪种是正确的( )
A、子类在先,父类在后
B、父类在先,子类在后
C、先有子类,其他如何排列都无关
D、有继承关系的异常不能在同一个try程序段内 -
下列程序的执行,说法正确的是 ( )
A、程序只输出第19行的异常信息
B、程序只输出第8行的异常信息
C、程序将不输出异常信息
D、程序将输出第8行和第19行的异常信息 -
下列程序的执行,说法错误的是( )
(这题题库没有图)
A、程序将输出“b=42”
B、程序将输出第10和12行的异常信息
C、程序第5行出错
D、程序将输出第10行的异常信息 -
所有异常类的父类( )
A、Exception
B、AWTError
C、Throwable
D、Error -
java语言中异常处理的出口是下列哪一子句 ( )
A、finally{}子句
B、catch{}子句
C、try{}子句
D、没有正确选项 -
关于异常,下列说法正确的是 ( )
A、没有正确答案
B、异常是一种对象
C、一旦程序运行,异常将被创建
D、为了保证程序运行速度,要尽量避免异常控制