栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java基础题

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java基础题

1、八个基本类型占多少个字节?占多少位?
基本类型字节
boolean11
byte18
char216
short216
int432
float432
long864
double864
2、哪些基本类型有缓存池?
基本类型缓冲池值
booleantrue/false
byte所有值
short-128~127
int-128~127
charu0000 to u007F
3、String是不是可变长度?

不是,因为它被声明为final,不可继承,内部使用的char数组也是被声明为final,所以不可变。然而,由于string是不可变的特性,常常被用做hashmap的key值,它只需要计算一次。同时,它是线程安全的。

4、StringBuffer and StringBuilder的区别?

它们两个都是可变长度,但StringBuffer是线程安全的,内部使用了synchronized 同步,而StringBuilder不是线程安全的

5、接口与抽象类有什么区别?
  1. 一个类可以实现多个接口,但是不能继承多个抽象类。
  2. 接口的字段只能是 static 和 final 类型的,而抽象类的字段没有这种限制。
  3. 接口的成员只能是 public 的,而抽象类的成员可以有多种访问权限。
6、类的初始化顺序是怎么样的?

存在继承的情况下,初始化顺序为:

  1. 父类(静态变量、静态语句块)
  2. 子类(静态变量、静态语句块)
  3. 父类(实例变量、普通语句块)
  4. 父类(构造函数)
  5. 子类(实例变量、普通语句块)
  6. 子类(构造函数)
7、说一下你知道的异常?异常分为两大类,分别是什么?

8、Java 中 ++ 操作符是线程安全的吗?

不是线程安全的操作。它涉及到多个指令,如读取变量值,增加,然后存储回内存,这个过程可能会出现多个线程交差。还会存在竞态条件(读取-修改-写入)。

9、byte a=127,b=127;a = a + b与a += b的区别?

+= 隐式的将加操作的结果类型强制转换为持有结果的类型。如果两这个整型相加,如 byte、short 或者 int,首先会将它们提升到 int 类型,然后在执行加法操作。
(因为 a+b 操作会将 a、b 提升为 int 类型,所以将 int 类型赋值给 byte 就会编译出错)

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/685827.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号