java基础
笔记的都是需要背诵的零散知识点,以顺序的方式组织
1.十进制数:
- 5.12、512.0f、.512
- double num4=1.1f
- 声明float型常量 须加f或F
- java默认浮点型double
- 当我们对运算结果是小数,进行相等判断时,要判断两个数的差值的绝对值,是否在某个精度的范围内
- (byte、short)和char之间不会相互自动转换
- byte、short、char 三者可以计算,在计算时首先转换为int
- %的本质:a%b=a-a/b*b
2.原码反码补码
- 二进制的最高位是符号位:0正 1负
- 正数的原码、反码、补码一样(三码合一)
- 负数的反码=它的原码符号位不变,其他位取反
- 负数的补码=反码+1
- 0的反码补码都是0
- java没有无符号数,都是有符号数
- 计算机以补码方式进行运算,看运算结果时要看原码
3.数据类型
4.数组
- int []a =new [n]; a.length———数组长度
- 数组new开辟新空间
- jvm,数组头在栈里面,元素在堆内
- 数组默认引用传递 int []a=b;b指向a的空间
5.数组初始化
- 静态初始化:
int a[] ={2,3,3,3,4,78,-12};
int [] [] a ={{3,2,1},{4,5,6},{900}};
int a[]=new int [9]; - 动态初始化:
int a[] =new int [n]; - 数组jvm内存组织形式
6.jvm内存—对象
7.成员方法
- 成员方法好处:
(1)提高代码的复用性
(2)可以将细节封装起来,供其他用户调用 - 一个方法最多有一个返回值(返回多个结果,数组)
- 返回类型基本类型,引用类型(数组,对象)都可以
- 方法要求返回,必须return,且返回类型必须一致或者兼容
- void return有没有都可以
8.递归要点
- 执行一个方法时,就创建一个新的受保护的独立空间,也就是栈空间
- 方法的局部变量互相独立,不受影响
- 如果使用引用类型变量(数组、对象),就会共享这个引用类型的数据
- 递归必须向退出递归的条件逼近,否则就是无限递归,出现(StackOverflowError,报错)
- 谁调用返回给谁
9.包
- 包本质:实际上是创建不同的文件夹/目录来保存文件
- 包的作用:
(1)区分相同名字的类
(2)当类很多时,可以很好的管理类
(3)控制访问范围 - 包基本语法:
(1)package 关键字 ,表示打包
(2)com.hspedu:表示包名
10.访问修饰符
- 可以修饰属性、方法、类
- 只有默认和public才能修饰类