Java核心技术1

一、java优点
1.Java首先是跨平台的语言,其通过虚拟机的方式,在不同的平台的通过不同的jvm虚拟机进行代码托管执行,由此实现跨平台的功能。
2.Java是静态面向对象编程语言的代表,其近乎是通过以类为基本点进行运行的,及其方便程序开发人员进行优雅开发。
3.java是多线程的语言,其main主线程在运行时就是多线程,main线程,用户线程入口,清除Reference即引用对象的线程,调用对象finalize方法的线程,分发处理发送给JVM信号的线程
4.Java有统一的垃圾回收机制,可以解决程序员复杂的GC管理问题。
二、main函数
同上面第三条
三、基本数据类型

名称大小(字节)
int4-32768 ~ 32767
short2-2147483648~2147483647
long8-9223372036854774808~9223372036854774807
float43.402823e+38~1.401298e-45
double83.402823e+38~1.401298e-45
char1(gdk)2(uioncode)2-4(utf)
byte1-128~ 127
boolean4false(默认值)true false

四、数据强转问题
主要的问题是如果大转小 会有精度问题。比如 int 转 float,long转double,long转int。在这通过
五、final
其实现常量的方式,是只允许实现一次赋值操作,并且其值会放在常量池中。并且他可以有效制止指令重排现象。
六、i++,和++i,i++是先取后加,++i是先加后取。而且本质上 进行自加时已经有地址更换了
七、注意位运算的各种算法,比如两变量交换,和简化程运算。
八、枚举的每一个属性都是一个实例。由此可以通过它来简单的实现单例模式,还是线程安全的
九、字符串
String不可变字符串 主要是因为其不能在源地址进行修改,同时其也是引用类型。在普通如
String str=“dafdsfa”
这种方式的声明string会将String放到常量池中,由此实现 String d=new String(C)是放在堆内存中,由此解决堆内存的开销。
String d=new String(C)会有两次对象生成,是入参过程中c也会现在常量池里面进行对象生成,同时也有new的操作也有对象生成。
十,stringbuffer和Stringbulid
1、String buffer是线程安全的
2、Stringbuild String buffer 相对于String性能上升了数百倍,其主要原因是String在生成过程中必然会有一次开销,在修改过程中也会有开销,并且大小4kb,但是上面的方法可以通过buffer队列的形式压缩字符空间,并且方便修改,并且在没有超过现有空间的时候不会进行内存申请。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值