JDK:java开发者工具
JRE:java运行环境
JVM:java虚拟机
java,javac: 编译运行java的, javac编译,java运行
javadoc:把java的东西生成一篇文档
jar: 把java打包成一个应用
1.IDEA
idea颜色配置
psvm
sout
100.for
new Damon.var
crtl+/ 快速多行注释
alt + insert 会生成构造器
ctrl + H 查看对象继承关系
alt + insert,override
选中目标ctrl + alt + t,
ctrl + alt + f 将选中变量升级为全局变量
输出内容.sout
.var 创建引用对象
crtrl+h能找到实现类
ctrl + alt + t 将选中区域用方法进行包裹,如trycatch,if等等
ctrl + i 重写方法
。
属性+方法 就是一个类
面向对象编程的本质就是:以类的方法组织代码,以对象的组织(封装)数据
2. JAVA基础
1.1 说说java中的自动装箱和拆箱的机制。
https://zhuanlan.zhihu.com/p/54190167
1.2 在java中==与equals的区别
优美的讲解equals和==的区别
为 值比较, equals为引用比较
对于= =来说,并不是绝对的只比较内容是否相等。有两种情况:如果是比较java的基本数据类型,则==比较的是内容是否相等;
如果比较的是引用类型,则比较的是是否是同一个对象。
对于equals来说,equals不允许拿来比较基本数据类型,只能比较引用类型,比较是否是同一个对象,除非重写了equals方法。
但是,有一些类型是对equals方法进行了重写的,比较的是内容是否相等。例如String,Date等类型对equals方法进行了重写。
这就涉及到装箱和拆箱中的==和equals了
以下输出的结果是什么?
public class Main {
public static void main(String[] args) {
Integer a = 1;
Integer b = 2;
Integer c = 3;
Integer d = 3;
Integer e = 321;
Integer f = 321;
Long g = 3L;
Long h = 2L;
System.out.println(c==d); // true
System.out.println(e==f); // false
System.out.println(c==(a+b)); // true
System.out