2022-1-23

任何语言都可以实现任何功能,但是代价是不一样的
Java和go可以相互转换,而且两个语言对于速度满足更好,例如淘宝微信
JDK的作用把.java文件编译成.class文件----javac
JRE的作用是把.class文件翻译给操作系统执行-----java

java的原始开发人员在开发了核心功能javaSE
之后会要求编程大牛拓展功能,是java社区,形成了生态
javaEE是java网站开发的全家桶
javaME是java的安卓开发
SDK是之前的JDK
现在的SDK是完整的样例代码加说明注释的那种,用来解释函数多代表的功能
所有的程序代码必须写在类中,并且区分大小写,类的名字要和文件名一致
mkdir是创建目录,touch是创建文件

驼峰命名法,类以大写字母开头,每个字母的首字母大写,
小驼峰命名,第一个字母小写,其他字母的首字母大写,普通变量,文件夹是小驼峰命名,方法名都是小驼峰命名

java和c的注释是一样的用//或者是/* */

char类型的位数根据编码决定,如果是ASCII就是8位,Unicode就是16位,UT-8就是16到32位
boolean是32位
同一类型的数据,不论数值大小占据的空间一样大
long,float类型的数据后面要加L,F大小写都一样
二进制用0b开头,八进制用0开头,十六进制用0x开头
float和double

E+38F代表的是10的多少次方

有效位数,从第一个不为零的数开始往后数

float类型距离零越近精度越高,反之就会越差,所以在一定的范围之内是精度高于int类型的,但是也会在一定的范围低于int类型

进制的转换,例如十进制转换为二进制,就是以十进制的数对2除余数,m进制转化为n进制也是如此

final针对引用类型的数组时,只能监控住数组整体不被替换,但是数组的个别替换是无法监控到的,所以我们不建议final修饰引用类型,因为作用不大。

十进制转换为六进制

N进制转为M进制是将N进制转为十进制,再将十进制转为M进制

正数的首位是0,反之是1

所以float是x的值会有小数所以可以表示小数
double类型时1+11+52
float和double的精度都比较低,所以我们都不常使用它来解决高精度的问题,例如银行的问题等

char类型的用单引号表示,他只是一个符号,在计算机内部存储的编码,计算机内部有一套形状和编码映射的数据库,由于字符类型的本质是编码,所以他也是整数类型的存储,所以可以将字符的运算赋值给整数类型

所有的编码都包含ASCII编码,而且ASCII的字符的数字在其他编码里面是不变的,但是即便是同样的数值在ASCII里和其他编码里占的位数是不一样的

随着字符的增多Unicode也不够用了,又拓展了新的UT-8拓展到了32位,而它具有两个特殊名词,码点和代码单元
码点是某个字符对应的代码值,用十六进制表示,并且前面要加上U+,例如U+0041
代码单元是存储16bit的存储单元
Unicode的编码是变长的字符,大部分是16位,而且把较常用的字符用16位编码,一些不常用的则用32位编码
在c语言中没有布尔类型boolean,所以java中要种int类型来表示boolean类型的数据

高速缓存的基本存储单元是64B(高速缓存行),他是物理上就存在的,但是他是只有一根线可以输出数据,所以内部包含很多数据格子,而且不能同时存取,里面包含的数据越多被卡住的可能性就会越大

所以为了解决排队问题,所以我们会尽量把数据设置的存储量会大一些,这样可以减少格子的数量,解决了排队的问题,所以java中的boolean类型时32位bit

final修饰的变量是不能修改的
final关键字的作用,是面试重点
final修饰的常量不可以被第二次修改
final修饰的类不可以被继承
final修饰的方法不可以被重写
final防止多线程下的指令重排序,保障线程安全=====这个是重点
final如果修饰的是整体,修饰的是引用类型的话,他的整体是不能改变的,例如如下代码

但是局部是可以被改变的,所以final是用来修饰一般类型和不可变的类(如果类中的每个方法都不可改变其对象),像这种引用类型是不用的

基本类型只有上述的八个,其他的都是引用类型,基本类型的数组也是引用类型

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值