java知识点总结

GC垃圾回收器        

    数据域---------堆区--------栈区           栈运行时开始运行时结束

JVM内存模型        jvm栈-------jvm堆--------jvm方法区(常量池)

引用中比较相等用equals比较的是对象的值,==比较的是对象的地址。

常量池中地址只有一个,Inter用来返回常量池的地址

        byte------>int------->float------->double

short,char---->int------>long------->double

                         int--------------------->double

final将变量转为常量,常量在编译期间运算,变量在运行时才运算

查看Integer装包还是拆包  :查看反汇编     Integer装包.拆包  是自动的

PC寄存器:CPU下一行要运行的知识的地址

OOM异常 :内存不足            java中只有PC不会出现OOM异常

函数调用在JVM(虚拟机栈上)

一个空类的大小是8个字节

查看一个堆的大小:先让程序停止(加断点调试状态)

                                   jps

                                   javaw    pid

                                    jmap      -histo:live  pid > d:sjnjn.txt

32位内存,8字节对齐,一个整型 4四个字节      对象头(8个)+length(4个)

 ?区别与联系:StringBuilder          

                        StringBuffer    用于多线程中

Integer      short    long       string   ---》不可变类

StringBuilder 可变地参元素的值

new 对象1.给对象开辟内存,2.给对象初始化

当一个类没有任何构造函数时,JVM会给这个类自动产生一个默认构造函数,构造函数只有类名和参数列表,如果用户定义了构造函数,JVM不会给这个类提供默认的构造函数

普通变量在堆上,静态变量在方法区(所有方法共享)

静态方法可以用类名来调用(无对象),普通方法只能用对象来调用,编译时系统会自动给对象加上This.引用变量

java类的加载过程:

系统调用时:静态初始化块    1次(只在最先调用一次)

                        实例初始化块    n次 (每产生一次对象之前都要调用一次)

                       构造函数             n次















评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值