北大青鸟电话24小时全国咨询热线:400-680-6399
Java
Java
.Net
Android
ios
网络营销
HTML5
联系方式
北京旗舰校区

电话:400-601-0802

QQ:4006010802

地址:西城区北礼士路100号

贵阳优越

电话:400-680-0851

QQ:800017195

地址:贵阳宝山北路213号

沈阳三好

电话:400-855-1066

QQ:4008551066

地址:沈阳和平区三好街54号

兰州优越

电话:0931-7701993

QQ:800017195

地址:兰州安宁区兴安路教育港

成都锦江

电话:400-680-6399

QQ:800017195

地址:成都锦江区大慈寺路22号

Java

当前位置:首页 > 青鸟知识 > Java
数据类型和 Java 基础面试问题
发布者:bdqn    发布时间:2017-08-17    浏览次数:

Java 中应该使用什么数据类型来代表价格?(答案)
如果不是特别关心内存和性能的话,使用BigDecimal,否则使用预定义精度的 double 类型。5rL北京北大青鸟-成都北大青鸟-贵阳北大青鸟-兰州北大青鸟-沈阳北大青鸟-北大青鸟优越教育官方网站

1)怎么将 byte 转换为 String?(答案)
可以使用 String 接收 byte[] 参数的构造器来进行转换,需要注意的点是要使用的正确的编码,否则会使用平台默认编码,这个编码可能跟原来的编码相同,也可能不同。5rL北京北大青鸟-成都北大青鸟-贵阳北大青鸟-兰州北大青鸟-沈阳北大青鸟-北大青鸟优越教育官方网站

2)Java 中怎样将 bytes 转换为 long 类型?
这个问题你来回答 :-)
3)我们能将 int 强制转换为 byte 类型的变量吗?如果该值大于 byte 类型的范围,将会出现什么现象?
是的,我们可以做强制转换,但是 Java 中 int 是 32 位的,而 byte 是 8 位的,所以,如果强制转化是,int 类型的高 24 位将会被丢弃,byte 类型的范围是从 -128 到 128。5rL北京北大青鸟-成都北大青鸟-贵阳北大青鸟-兰州北大青鸟-沈阳北大青鸟-北大青鸟优越教育官方网站

4)存在两个类,B 继承 A,C 继承 B,我们能将 B 转换为 C 么?如 C = (C) B;(answer答案)5rL北京北大青鸟-成都北大青鸟-贵阳北大青鸟-兰州北大青鸟-沈阳北大青鸟-北大青鸟优越教育官方网站

5)哪个类包含 clone 方法?是 Cloneable 还是 Object?(答案)
java.lang.Cloneable 是一个标示性接口,不包含任何方法,clone 方法在 object 类中定义。并且需要知道 clone() 方法是一个本地方法,这意味着它是由 c 或 c++ 或 其他本地语言实现的。5rL北京北大青鸟-成都北大青鸟-贵阳北大青鸟-兰州北大青鸟-沈阳北大青鸟-北大青鸟优越教育官方网站

6)Java 中 ++ 操作符是线程安全的吗?(答案)
7)不是线程安全的操作。它涉及到多个指令,如读取变量值,增加,然后存储回内存,这个过程可能会出现多个线程交差。5rL北京北大青鸟-成都北大青鸟-贵阳北大青鸟-兰州北大青鸟-沈阳北大青鸟-北大青鸟优越教育官方网站

24)a = a + b 与 a += b 的区别(答案)
+= 隐式的将加操作的结果类型强制转换为持有结果的类型。如果两这个整型相加,如 byte、short 或者 int,首先会将它们提升到 int 类型,然后在执行加法操作。如果加法操作的结果比 a 的最大值要大,则 a+b 会出现编译错误,但是 a += b 没问题,如下:
byte a = 127;
byte b = 127;
b = a + b; // error : cannot convert from int to byte
b += a; // ok
(译者注:这个地方应该表述的有误,其实无论 a+b 的值为多少,编译器都会报错,因为 a+b 操作会将 a、b 提升为 int 类型,所以将 int 类型赋值给 byte 就会编译出错)5rL北京北大青鸟-成都北大青鸟-贵阳北大青鸟-兰州北大青鸟-沈阳北大青鸟-北大青鸟优越教育官方网站

25)我能在不进行强制转换的情况下将一个 double 值赋值给 long 类型的变量吗?(答案)
不行,你不能在没有强制类型转换的前提下将一个 double 值赋值给 long 类型的变量,因为 double 类型的范围比 long 类型更广,所以必须要进行强制转换。5rL北京北大青鸟-成都北大青鸟-贵阳北大青鸟-兰州北大青鸟-沈阳北大青鸟-北大青鸟优越教育官方网站

26)3*0.1 == 0.3 将会返回什么?true 还是 false?(答案)
false,因为有些浮点数不能完全精确的表示出来。5rL北京北大青鸟-成都北大青鸟-贵阳北大青鸟-兰州北大青鸟-沈阳北大青鸟-北大青鸟优越教育官方网站

27)int 和 Integer 哪个会占用更多的内存?(答案)
Integer 对象会占用更多的内存。Integer 是一个对象,需要存储对象的元数据。但是 int 是一个原始类型的数据,所以占用的空间更少。5rL北京北大青鸟-成都北大青鸟-贵阳北大青鸟-兰州北大青鸟-沈阳北大青鸟-北大青鸟优越教育官方网站

28)为什么 Java 中的 String 是不可变的(Immutable)?(answer答案)
Java 中的 String 不可变是因为 Java 的设计者认为字符串使用非常频繁,将字符串设置为不可变可以允许多个客户端之间共享相同的字符串。更详细的内容参见答案。5rL北京北大青鸟-成都北大青鸟-贵阳北大青鸟-兰州北大青鸟-沈阳北大青鸟-北大青鸟优越教育官方网站

29)我们能在 Switch 中使用 String 吗?(answer答案)
从 Java 7 开始,我们可以在 switch case 中使用字符串,但这仅仅是一个语法糖。内部实现在 switch 中使用字符串的 hash code。5rL北京北大青鸟-成都北大青鸟-贵阳北大青鸟-兰州北大青鸟-沈阳北大青鸟-北大青鸟优越教育官方网站

30)Java 中的构造器链是什么?(answer答案)
当你从一个构造器中调用另一个构造器,就是Java 中的构造器链。这种情况只在重载了类的构造器的时候才会出现。5rL北京北大青鸟-成都北大青鸟-贵阳北大青鸟-兰州北大青鸟-沈阳北大青鸟-北大青鸟优越教育官方网站



5rL北京北大青鸟-成都北大青鸟-贵阳北大青鸟-兰州北大青鸟-沈阳北大青鸟-北大青鸟优越教育官方网站

上一篇:什么是 Busy spin?我们为什么要使用它? 下一篇:下一篇:很抱歉没有了
北京旗舰校区
电话:400-601-0802
QQ:4006010802
地址:西城区北礼士路100号
贵阳优越
电话:400-680-0851
QQ:800017195
地址:贵阳宝山北路213号
沈阳三好
电话:400-855-1066
QQ:4008551066
地址:沈阳和平区三好街54号
兰州优越
电话:0931-7701993
QQ:800017195
地址:兰州安宁区兴安路教育港
成都锦江
电话:400-680-6399
QQ:800017195
地址:成都锦江区大慈寺路22号