Java基础问题汇总

这篇博客汇总了Java的基础问题,涵盖JDK、JRE、JVM的定义,Java的基本数据类型,运算符,switch结构,成员变量与局部变量的区别,static关键字的使用,封装的意义,面向对象的概念,接口与抽象类的差异,继承的含义,构造方法,防止精度丢失的解决方案,集合与数组的对比,常用集合的特点,以及==和equals的区别,String、StringBuilder与StringBuffer的异同,重载和重写的区别,装箱与拆箱,final和finally的用法,this和super的场景,异常处理,多线程的实现方式,线程生命周期,TreeSet和HashSet的区别,以及TreeMap的去重策略。
摘要由CSDN通过智能技术生成

1、简述JDK、JRE和JVM
JDK:Java开发工具包,由JVM+核心类库+开发工具组成
JRE:Java的运行环境,包括JVM+核心类库+运行工具
JVM:Java虚拟机,运行Java程序的地方
【注】
核心类库:Java已经写好的一些东西,可以直接拿来用
javac:编译工具,将代码变成class文件
java:运行工具
jdb:调试工具
jhat:内存分析工具
...等等

2、Java的四类八种基本数据类型
整数类型
byte:占用1个字节,-128~127
short:占用2个字节,-32768~32767
int:占用4个字节,-2^31~2^31-1
long:占用8个字节,-2^63~2^63
浮点类型
float:单精度,占用4个字节,可以精确到小数点后7位,数字后加f
double:双精度,占用8个字节,精度是float的2倍
默认浮点类型为double,浮点类型并不能表示一个精确的值,会损失一定的精度
字符类型
char:占用2个字节,可以表示一个字母一个数字
布尔类型
boolean:占用1个字节,只有true和false两个值

3、运算符的种类以及逻辑运算符中&和&&的区别
基本运算符:加+、减-、乘*、除/、取模%
自增自减运算符:++、--
增量运算符:+=、-=、*=、/=、%=
关系运算符:==、!=、<、>、=
逻辑运算符:&、&&、|、||
&表示与(并且),左右两个条件都成立才为真,判断条件时先判断左边的条件再判断右边的条件,不管左边的条件是否成立,左右两边都需要判断
&&和&不同的是,当左边的条件不成立时,不用再判断右边的条件

4、什么是switch结构?其中的参数可以是什么类型?
switch(表达式){
    case 1:
     

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值