温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Java入门易踩坑的问答题有哪些

发布时间:2022-02-07 16:07:28 来源:亿速云 阅读:150 作者:iii 栏目:开发技术

本篇内容介绍了“Java入门易踩坑的问答题有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

1,java基本类型

下面属于java基本数据类型的有( )

A.String

B.byte

C.char

D.Array

Java入门易踩坑的问答题有哪些

Java基本数据类型分为三种,数值型,字符型,布尔型

数值型:

整型:byte、short、int、long

浮点型:double、float

字符型:char

布尔型:boolean

Array String属于引用数据类型,选择BC

2,java包装类

下面属于java包装类的是( )

A.String

B.Long

C.Character

D.Short

Java包装类就是基本类型对应的类类型,基本类型为八种基本数据类型,所以String不属于Java包装类。选择BCD

3,Java编译

下列语句哪一个正确 ( ) 

A.Java程序经编译后会产生machine code

B.Java程序经编译后会产生byte code

C.Java程序编译使用命令javac 运行使用 java 命令

D.以上都不正确

Java编译后产生的是字节码文件,Java程序编译使用命令javac 运行使用 java 命令 选择BC

4,JDK,JVM,JRE

下列有关JDK, JRE, JVM三者的叙述,正确的是:( ) 

A.JDK是Java开发工具包 ,包括了Java运行环境JRE(Java Runtime Envirnment)、一堆Java工具(javac/java/jdb等)和Java基础的类库(即Java API 包括rt.jar)

B.JRE是运行基于Java语言编写的程序所不可缺少的运行环境。也是通过它,Java的开发者才得以将自己开发的程序发布到用户手中,让用户使用。

C.JVM是整个Java实现跨平台的最核心的部分,所有的Java程序会首先被编译为.class的类文件,这种类文件可以在虚拟机上执行。也就是说class并不直接与机器的操作系统相对应,而是经过虚拟机间接与操作系统交互,由虚拟机将程序解释给本地系统执行

D.JDK中包含了JRE,JRE又包含JVM

Java入门易踩坑的问答题有哪些

JDK(Java Development Kit) 是 Java 语言的软件开发工具包(SDK)。 在JDK的安装目录下有一个jre目录,里面有两个文件夹bin和lib,在这里可以认为bin里的就是jvm,lib中则是jvm工作所需要的类库,而jvm和 lib合起来就称为jre。

JRE(Java Runtime Environment,Java运行环境),包含JVM标准实现及Java核心类库。JRE是Java运行环境,并不是一个开发环境,所以没有包含任何开发工具(如编译器和调试器)

JVM是Java Virtual Machine(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。

ABCD均正确

5,类型转换

基本数据类型均可任意互相转换( )

A.对

B.错

boolean也属于基本数据类型,但不能和其他类型转换

6,转义字符

在Java中表示换行符的转义字符是:( )

A.\n

B.\f

C.'n'

D.\dd

Java入门易踩坑的问答题有哪些

 选择A

7,标识符

在java中,下列标识符不合法的有( )

A.new

B.$Usdollars

C.1234

D.car.taxi

Java入门易踩坑的问答题有哪些

Java标识符由数字,字母和下划线(_),美元符号($)或人民币符号(¥)组成。在Java中是区分大小写的,而且还要求首位不能是数字。最重要的是,Java关键字不能当作Java标识符。new属于关键字。选择ACD

8,类型转换

经过强制类型转换以后,变量a,b的值分别为多少( )

short a =128;
 
byte b =(byte) a;

A.128 127

B.128 - 128

C.128 128

D.编译错误

Java 作为一个强类型编程语言, 当不同类型之间的变量相互赋值的时候, 会有教严格的校验. 先看以下几个代码场景:

int 和 long/double 相互赋值

int a = 10; 
long b = 20; 
a = b; // 编译出错, 提示可能会损失精度. 
b = a; // 编译通过. 
 
int a = 10; 
double b = 1.0; 
a = b; // 编译出错, 提示可能会损失精度. 
b = a; // 编译通过.

long 表示的范围更大, 可以将 int 赋值给 long, 但是不能将 long 赋值给 int.

double 表示的范围更大, 可以将 int 赋值给 double, 但是不能将 double 赋值给 int.

结论: 不同数字类型的变量之间赋值, 表示范围更小的类型能隐式转换成范围较大的类型, 反之则不行

128赋值给a,a=128,byte为一个字节,大小范围-128-127,所以b=-128

选择B

9,赋值符号

以下哪一个不是赋值符号( )

A.+=

B.<<=

C.<<<=

D.>>>=

增量赋值运算符

+=  -=  *=  /=  %=

无符号右移 >>>: 最右侧位不要了, 最左侧补 0

int a = 0xffffffff; 
System.out.printf("%x\n", a >>> 1);

输出: 

// 运行结果(注意, 是按十六进制打印的)
7fffffff

不存在无符号左移,选择C

10,打印一个字符串

如果要打印一个字符串,需要使其输出结果为:\"hello\",则以下哪种方式可以正确输出:( )

A.System.out.println("\\\"hello\\\"");

B.System.out.println("\\"hello\\"");

C.System.out.println("/\"hello/\"");

\\指打印一个\, \''指打印一个'',所以选择A

“Java入门易踩坑的问答题有哪些”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI