java客观题

5、关于Java的运行环境说法正确的有:
a. Java虚拟机 分析 并 解释执行 字节码程序。

【Java程序从源文件创建到程序运行要经过两大步骤:
1、源文件由编译器编译成字节码(ByteCode)  
2、字节码由java虚拟机解释运行。
因为java程序既要编译同时也要经过JVM的解释运行,
所以说Java被称为半解释语言。
  第一步(编译): 创建完源文件之后,程序会先被编译为.class文件。
Java编译一个类时,如果这个类所依赖的类还没有被编译,编译器就会先编译这个
被依赖的类,然后引用,否则直接引用。
第二步(运行):java类运行的过程大概可分为两个过程:1、类的加载  
2、类的执行。
需要说明的是:JVM主要在程序第一次主动使用类的时候,才会去加载该类。
也就是说,JVM并不是在一开始就把一个程序就所有的类都加载到内存中,
而是到不得不用的时候才把它加载进来,而且只加载一次
[引用自](https://www.cnblogs.com/qiumingcheng/p/5398610.html)】

c. Java是一种平台无关语言
d. Java保留了大部分与C++相似 的语法。
说法错误的是:
b. Java原程序通过集成开发环境(IDE) 翻译为字节码程序.*

【JAVA是一种跨平台语言,最大的优势就是它实现了,一次编译,到处运行的机制。
1、编写阶段——程序设计语言:写java代码
2、编译阶段——程序处理语言:把程序设计语言翻译成目标语言-->.class文件
3、运行,调试阶段——集成开发环境(IDE,如Eclipse):由这个平台来执行编译生成的程序
[到处运行的隐含条件——这里的“到处”的前提是“装有JVM”。 ]
[推荐](https://blog.csdn.net/wangyongxia921/article/details/28117155)】

9、Java虚拟机中,哪个数据区存储的是所有线程共享的数据:
b. Java堆*

【Java虚拟机规范定义了字节码执行期间使用的各种运行时数据区,
即JVM在执行Java程序的过程中,会把它管理的内存划分为若干个不同的数据区域,包括:程序计数器、java虚拟机栈、本地方法栈、java堆、方法区、运行时常量池;
   从线程共享角度来说,可以分为两类:
1、所有线程共享的数据区
   方法区、运行时常量池、java堆;
   这些数据区域是在Java虚拟机启动时创建的,只有当Java虚拟机退出时才会被销毁;

2、线程间隔离的数据区
   程序计数器、java虚拟机栈、本地方法栈、
   这些数据区域是每个线程的"私有"数据区,每个线程都有自己的,不与其他线程共享;
   每个线程的数据区在创建线程时创建,并在线程退出时被销毁;

3、另外,还一种特殊的数据区
  直接内存--使用Native函数库直接分配的堆外内存;
   即Java内存区域 = JVM运行时数据区 +直接内存。
   推荐(https://www.cnblogs.com/alsf/p/9484807.html)】

10、关于Java关键字的说法正确的:
c. import表明要访问指定的类或者包
说法错误的是:
b. extends只能作用于类,不能作用于接口。

   【 --->interface可以使用extends继承且只能继承另一个interface。
         	如:interface a{}
				interface c{}
				interface b extends a,c{}  是正确的。】

18、关于异常捕捉机制的描述,正确的是:
d. 如果任何封闭 try 块都未捕获到异常,Java解释器将退出。
a. 注意–>try块后必须跟不少于一个catch子句或一个finally子句,

【不一定必须跟的是一个catch子句。】

29多选, char(2字节) 转 int(4字节) 可以自动转,也可以强制转换(int)

【多选推荐】(https://wenku.baidu.com/view/88e1ce13770bf78a642954a8.html)
https://wenku.baidu.com/view/ed61d5eeaeaad1f346933fb7.html】

31多选,少选
关于布局管理器说法正确的是:
a、 布局管理器用来管理组件放置在容器中的位置和大小
b、 每个容器都有一个布局管理器
c、 使用布局管理器可以使JAVA生成的图形用户界面具有平台无关性*
d、 布局管理器LayoutManager本身是一个接口,通常能够使用的是实现了该接口的类

【Swing在不同平台上运行的界面是一样的。
关于Java布局管理器的详讲:java的GUI设计(https://wenku.baidu.com/view/a762b019ff4733687e21af45b307e87101f6f882.html)】

32多选,少选
说法错误的有:
b、判断一个对象是否可以被垃圾回收的条件为是否还有对该对象的引用*

【片面,使用的是 引用计数算法(已被淘汰),现在多用的是 可达性		
分析算法(存在缓刑),且GC的不定时的特性无法明确回收的时机。 
推荐:(https://blog.csdn.net/canot/article/details/51037938)】

33多选,少选
说法正确的有:
a、 java中的集合类(如Vector)可以用来存储任何类型的对象,且大小可以自动调整。
但需要事先知道所存储对象的类型,才能正常使用。
b、在java中,可以用异常(Exception)来抛出一些并非错误的的信息,但这样比直接从函数返回一个结果要花费更大的系统开销。
c、java接口包含函数声明和常量声明。*
[例: interface a{
int a = 9;
void hasH();;
}
class b implements a{
public void hasH(){
System.out.println(a);
}
} ]

35多选,少选
java中,关于报的陈述正确的是:
d、可以将多个源文件中的类放在同一个包中。*

【此处的源文件指 编写的java代码】

记录正确的说法:
Java中的输入/输出流的相关说法:
a、FileInputStream与FileOutputStream类用于读、写字节流
b、Reader 与 Writer类用来读、写字符流
c、RandomAccessFile既可以用来读文件,也可以用来写文件
c、File类用来处理与文件相关的操作

48、判断
Java源程序可以在各类平台上运行。
—>错误*

【源文件不可以,编译后的字节码文件(.class文件)
可以在(装有JVM的)各类平台运行】

49、判断
Byte是带符号的8位整型数。
—>正确*

【Byte占一个字节(八位),且有符号,所以是带符号的8位整型数】

50、Long是带符号的32位整型数
—>错误*

【Long占8个字节(8*8 = 64位),且有符号,所以是带符号的 64 位整型数】
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值