Java面试宝典_君哥讲解笔记02 描述JDK、JRE、JVM之间的关系、如果main方法声明成private会怎么样、char 类型的变量能不能存储一个中文汉字、++a 和a+++的区别等

系列文章目录

java基础面试题

在这里插入图片描述

请描述JDK、JRE、JVM之间的关系

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

如果main方法被声明成private会怎么样呢?

其实非常简单,我们可以先想想,如果一个类中没有main方法会怎么样
答案是一个类中没有main方法也没有啥问题
那么main方法修饰符改为private也没有问题,只是它就相当于是你自己的一个方法了
在这里插入图片描述
在这里插入图片描述

&和&&区别在哪

我们开发的时候大多时候用的是&& ,所以大家可能会对&相对陌生
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

char 类型的变量能不能存储一个中文汉字

答案
可以存储一个中文汉字,但是不能存储两个中文汉字

因为在Unicode中文字符编码里面,一个中文汉字是占2个字节的
在这里插入图片描述
执行结果
在这里插入图片描述
所以倒过来,也是一样,只能存一个中文汉字
在这里插入图片描述
在这里插入图片描述

详解++a 和a+++的区别

++a和a++是几元运算符呢
都是一元运算符
== ++a就是先自加再运算 ==
== a++就是先运算再自加 ==
简单来记:
++a 先自加,a++后自加

在这里插入图片描述
在这里插入图片描述
但是这个时候a变成11已经没什么用了,因为已经输出了
除非你下面还有用到a的时候
在这里插入图片描述
++a又是怎么样的呢
由于++a是先自加再运算
在这里插入图片描述

a+=b 和a=a+b有啥区别

乍一看好像没什么区别,实际上是有区别的
a+=b 是赋值运算符,意思是 把 a+b的结果赋值给a
a=a+b是算术运算符,意思是 a+b=a
我们来看一个经典案例
在这里插入图片描述
在这里插入图片描述
接着看
在这里插入图片描述
从int转到short可能会有损失
在这里插入图片描述

从int转到short可能会有损失,所以报错了
在这里插入图片描述

这就是赋值运算符和算术运算符的区别

在这里插入图片描述
在这里插入图片描述

如果是一种数据类型,依然有问题,为什么呢?
在这里插入图片描述
在这里插入图片描述
byte、short 类型的数相加,都会提升为int类型

おすすめ

転載: blog.csdn.net/qq_41753340/article/details/121019322