Java日常练习题,每天进步一点点(44)

目录
  • 1、AWT 中用来表示文本框的类是 ( )
  • 2、以下表达式的类型和值是什么?(注意整数除法)()
  • 3、以下代码段执行后的输出结果为
  • 4、Java的跨平台特性是指它的源代码可以在多个平台运行。()
  • 5、方法通常存储在进程中的哪一区()
  • 6、默认RMI采用的是什么通信协议?
  • 7、J2EE中,当把来自客户机的HTTP请求委托给servlet时,会调用HttpServlet的( )方法
  • 8、String str = new String(“abc”),“abc”在内存中是怎么分配的?
  • 9、在Java语言中,下列关于字符集编码(Character set encoding)和国际化(i18n)的问题,哪些是正确的?
  • 10、关于volatile关键字,下列描述不正确的是?
    • 答案汇总:
  • 总结

1、AWT 中用来表示文本框的类是 ( )

正确答案: A

TextField

Menu

Label

List

题解:
A、TextField表示文本框
B、Menu表示下拉菜单
C、Label表示标签
D、List表示列表框

2、以下表达式的类型和值是什么?(注意整数除法)()

-5 + 1/4 + 2*-3 + 5.0

正确答案: D

int -3

int -4

double -5.5

double -6.0

题解:
在Java中5.0是double类型,所以结果的数据类型为double。因为1/4结果为0,所以结果为-6.0

3、以下代码段执行后的输出结果为

public class Test {

public static void main(String args[]) {

int x = -5;

int y = -12;

System.out.println(y % x);

}

}

正确答案: D

-1

2

1

-2

题解:
无论是正数还是负数,在取余运算时都有:被除数=商×除数+余数,所以-12=2×(-5)+(-2),-12是被除数,-5是除数,2是商,余数是-2。

4、Java的跨平台特性是指它的源代码可以在多个平台运行。()

正确答案: B

正确

错误

题解:
Java的跨平台特性是因为JVM的存在, 它可以执行.class字节码文件,而不是.java源代码

5、方法通常存储在进程中的哪一区()

正确答案: D

堆区

栈区

全局区

方法区

题解:
Java运行时的数据区包括:(其中前两个是线程共享的)
1.方法区(Method Area) 存储已被虚拟机加载的类信息、常量、静态变量、即时编译器编译后的代码等数据
2.堆(Heap) 存放对象实例,几乎所有对象实例都在这里分配内存
3.虚拟机栈(VM Stack) 描述的是Java方法执行的内存模型:每个方法在执行的同时会创建一个Stack Frame(方法运行时的基础数据结构)用于存储局部变量表、操作数栈、动态连接、方法出口等信息
4.本地方法栈(Native Method Stack) 与虚拟机栈了类似,不过则为虚拟机使用的到的Native方法服务。(有的虚拟机譬如Sun HotSpot虚拟机直接把本地方法栈和虚拟机栈合二为一)
5.程序计数器(Program Counter Register) 可看作当前线程所执行的字节码的行号的标识器

6、默认RMI采用的是什么通信协议?

正确答案: C

HTTP

UDP/IP

TCP/IP

Multicast

题解:
RMI采用的是TCP/IP协议
RMI(Remote Method Invocation)远程方法调用是一种计算机之间利用远程对象互相调用实现双方通讯的一种通讯机制。
TCP/IP是远程通讯的主要手段

7、J2EE中,当把来自客户机的HTTP请求委托给servlet时,会调用HttpServlet的( )方法

正确答案: A

service

doget

dopost

init

题解:
首先Servlet通过HttpRequest对象封装http请求信息,然后Servlet容器调用HttpServlet的service方法,它会根据用户请求的方式调用具体的方法。如果请求方式是Get则调用doGet方法,如果请求方式是POST则调用doPost方法,执行完后,通过HttpRespones对象生成相应数据相应客户的请求,一般要重写doGet方法和doPost方法

8、String str = new String(“abc”),“abc”在内存中是怎么分配的?

正确答案: A C

字符串常量区

寄存器

题解:
当你new String(“abc”)时,其实会先在字符串常量区生成一个abc的对象,然后new String()时会在堆中分配空间,然后此时会把字符串常量区中abc复制一个给堆中的String,故abc应该在堆中和字符串常量区

9、在Java语言中,下列关于字符集编码(Character set encoding)和国际化(i18n)的问题,哪些是正确的?

正确答案: C D

每个中文字符占用2个字节,每个英文字符占用1个字节

假设数据库中的字符是以GBK编码的,那么显示数据库数据的网页也必须是GBK编码的。

Java的char类型,通常以UTF-16 Big Endian的方式保存一个字符。

实现国际化应用常用的手段是利用ResourceBundle类

题解:
A 显然是错误的,Java一律采用Unicode编码方式,每个字符无论中文还是英文字符都占用2个字节。
B 也是不正确的,不同的编码之间是可以转换的,通常流程如下:
将字符串S以其自身编码方式分解为字节数组,再将字节数组以你想要输出的编码方式重新编码为字符串。
例:String newUTF8Str = new String(oldGBKStr.getBytes(“GBK”), “UTF8”);
C 是正确的。Java虚拟机中通常使用UTF-16的方式保存一个字符
D 也是正确的。ResourceBundle能够依据Local的不同,选择性的读取与Local对应后缀的properties文件,以达到国际化的目的。

10、关于volatile关键字,下列描述不正确的是?

正确答案: B D

用volatile修饰的变量,每次更新对其他线程都是立即可见的。

对volatile变量的操作是原子性的。

对volatile变量的操作不会造成阻塞。

不依赖其他锁机制,多线程环境下的计数器可用volatile实现。

题解:
所谓 volatile的措施,就是
1.每次从内存中取值,不从缓存中什么的拿值。这就保证了用 volatile修饰的共享变量,每次的更新对于其他线程都是可见的。
2.volatile保证了其他线程的立即可见性,就没有保证原子性。
3.由于有些时候对 volatile的操作,不会被保存,说明不会造成阻塞。不可用与多线程环境下的计数器。
此外,volatile 变量不会像锁那样造成线程阻塞,因此也很少造成可伸缩性问题。

答案汇总:

1、正确答案: A

2、正确答案: D

3、正确答案: D

4、正确答案: B

5、正确答案: D

6、正确答案: C

7、正确答案: A

8、正确答案: A C

9、正确答案: C D

10、正确答案: B D

总结

本篇文章就到这里了,希望能给你带来帮助,也希望您能够多多关注我们的更多内容!

(0)

相关推荐

  • Java日常练习题,每天进步一点点(41)

    目录 1.下列关于计算机系统和Java编程语言的说法,正确的是() 2.变量a是一个64位有符号的整数,初始值用16进制表示为:0Xf000000000000000: 变量b是一个64位有符号的整数,初始值用16进制表示为:0x7FFFFFFFFFFFFFFF. 则a-b的结果用10进制表示为多少?() 3.以下代码的运行结果是什么( ) 4.下面代码的运行结果为:() 5.下面哪些类可以被继承? Java.lang.Thread.java.lang.Number.java.lang.Doubl

  • Java日常练习题,每天进步一点点(39)

    目录 1.在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数个数.类型或顺序各不相同,传回的值也可以不相同. 2.ArrayList和Vector主要区别是什么? 3.public class Test 4.下面哪种情况会导致持久区jvm堆内存溢出? 5.如果希望监听TCP端口9000,服务器端应该怎样创建socket? 6.What will happen when you attempt to compile and run the following code? 7.下列代码

  • Java日常练习题,每天进步一点点(40)

    目录 1.下面有关JSP内置对象的描述,说法错误的是? 2.Java语言与其它语言相比,独有的特点是( ) 3.下面哪个选项正确创建socket连接? 4.定义有StringBuffer s1=new StringBuffer(10);s1.append("1234")则s1.length()和s1.capacity()分别是多少? 5.下面有关SPRING的事务传播特性,说法错误的是? 6.有一个源代码,只包含import java.util.* ; 这一个import语句,下面叙述

  • Java日常练习题,每天进步一点点(42)

    目录 1.Integer a = 1; 2.对于同一类中的两个方法 , 在判断它们是不是重载方法时 , 肯定不考虑( ) 3.对于Java中异常的描述正确的是( ) 4.下面的方法,当输入为2的时候返回值是多少? 5.下面有关 maven和ant的描述,描述错误的是? 6.下列方法中哪个是执行线程的方法? () 7.java中Hashtable, Vector, TreeSet, LinkedList哪些线程是安全的? 8.关于HashMap和Hashtable正确的说法有() 9.以下关于fi

  • Java日常练习题,每天进步一点点(43)

    目录 1.在异常处理中,若try中的代码可能产生多种异常则可以对应多个catch语句,若catch中的参数类型有父类子类关系,此时应该将父类放在后面,子类放在前面. 2.下面有关servlet中init,service,destroy方法描述错误的是? 3.以下描述错误的一项是( )? 4.JSP 表达式的写法: 5.Panel 和 Applet 的默认布局管理器是( ) 6.What will be printed when you execute the following code? 7.

  • Java日常练习题,每天进步一点点(44)

    目录 1.AWT 中用来表示文本框的类是 ( ) 2.以下表达式的类型和值是什么?(注意整数除法)() 3.以下代码段执行后的输出结果为 4.Java的跨平台特性是指它的源代码可以在多个平台运行.() 5.方法通常存储在进程中的哪一区() 6.默认RMI采用的是什么通信协议? 7.J2EE中,当把来自客户机的HTTP请求委托给servlet时,会调用HttpServlet的( )方法 8.String str = new String("abc"),"abc"在内存

  • Java日常练习题,每天进步一点点(47)

    目录 1.public interface IService {String NAME="default";} 2.关于以下程序代码的说明正确的 3.以下 _____ 不是 Object 类的方法 4.try块后必须有catch块.() 5.已知有下列Test类的说明,在该类的main方法内,则下列哪个语句是正确的?() 6.String s = new String("xyz");创建了几个StringObject? 7.下面有关JVM内存,说法错误的是? 8.问

  • Java日常练习题,每天进步一点点(62)

    目录 1.Java Application 源程序的主类是指包含有( )方法的类. 2.如果定义一种表达式结构:(+ 6 3)的值为9,(- 6 3)的值为3,( * 6 3)的值为18,( / 6 3)的值为2:那么对于表达式( * (- 16 (* 3 2 2 )) (+ 5 (/ 6 (- 5 3))))输出的结果为____. 3.给出以下代码 4.当编译并运行下面程序时会发生什么结果() 5.对于文件的描述正确的是( ) 6.以下代码执行的结果显示是多少( )? 7.以下哪几个是java

  • Java日常练习题,每天进步一点点

    目录 1.类 ABC 定义如下: 2.后端获取数据,向前端输出过程中,以下描述正确的是 3.在异常处理中,以下描述不正确的有 4.如果一个接口Cup有个方法use(),有个类SmallCup实现接口Cup,则在类SmallCup中正确的是? ( ) 5.下面的程序将来打印什么?() 6.执行以下程序后的输出结果是() 7.java语言的下面几种数组复制方法中,哪个效率最高? 8.有关会话跟踪技术描述正确的是() 9.关于Java内存区域下列说法不正确的有哪些 10.下面的Java赋值语句哪些是有

  • Java日常练习题,每天进步一点点(9)

    目录 1."先进先出"的容器是:( ) 2.不考虑反射机制,一个子类显式调用父类的构造器必须用super关键字.( ) 3.以下是java concurrent包下的4个类,选出差别最大的一个 4.判断对错.在java的多态调用中,new的是哪一个类就是调用的哪个类的方法. 5.下面属于java引用类型的有? 6.有以下程序段, 则下面正确的选项是() 7.往OuterClass类的代码段中插入内部类声明, 哪一个是错误的: 8.Java.Thread的方法resume()负责重新开始

  • Java日常练习题,每天进步一点点(15)

    目录 1.main 方法是 Java Application 程序执行的入口点,以下描述哪项是合法的(). 2.一般情况下,以下哪个选项不是关系数据模型与对象模型之间匹配关系? 3.下列关于修饰符混用的说法,错误的是( ) 4.某程序要求每次输入只能是正整数,并且每次输入的数值要求必须是100的倍数且小于等于500,则下列哪个是正确的无效等价类( ) 5.根据以下代码段,下列说法中正确的是( ). 6.在创建派生类对象,构造函数的执行顺序() 7.关于下面的一段代码,以下哪些说法是正确的: 8.

  • Java日常练习题,每天进步一点点(14)

    目录 1.下面程序的运行结果:() 2.如果int x=20, y=5,则语句System.out.println(x+y +""+(x+y)+y); 的输出结果是() 3.有以下类定义: 4.以下代码的输出的正确结果是 5.下列说法正确的是() 6.以下代码输出的是: 7.非抽象类实现接口后,必须实现接口中的所有抽象方法,除了abstract外,方法头必须完全一致. 8.下列关于容器集合类的说法正确的是? 9.下面说法正确的是?() 10.下面的对象创建方法中哪些会调用构造方法 ()

  • Java日常练习题,每天进步一点点(13)

    目录 1.以下关于java封装的描述中,正确的是: 2.请问所有的异常类皆直接继承于哪一个类?() 3.Which statement is true for the class java.util.ArrayList? 4.以下 b 的值是: byte b = (byte)129; 5.哪个类可用于处理 Unicode? 6.下面代码的运行结果是( ) 7.以下哪些继承自 Collection 接口() 8.程序中常采用变量表示数据,变量具有名.地址.值.作用域.生存期等属性.关于变量的叙述,

  • Java日常练习题,每天进步一点点(12)

    目录 1.Which is the return type of the method main()? 2.java中用()字指明继承关系.用()关键字指明对接口的实现. 3.顺序执行下列程序语句后,则b的值是() 4.下面程序的输出是什么? 5.下面属于JSP内置对象的是? 6.关于抽象类与接口,下列说法正确的有? 7.下面哪些写法能在 java8 中编译执行() 8.Java是一门支持反射的语言,基于反射为Java提供了丰富的动态性支持,下面关于Java反射的描述,哪些是错误的:( ) 9.

  • Java日常练习题,每天进步一点点(11)

    目录 1.对接口的描述正确的是() 2.类中的数据域使用private修饰为私有变量,所以任何方法均不能访问它. 3.已知如下类定义: 4.在java的一个异常处理中,可以包含多个的语句块是 ( ). 5.关于Java语言中的final关键字的使用,下列说法正确的是() 6.在 main() 方法中给出的整型数组,如果将其写到一个文件中,需要( ). 7.下列有关Servlet的生命周期,说法不正确的是? 8.What is displayed when the following is exe

随机推荐