1. 使用引用来操纵对象
2. jvm中的内存分布
3. 基本数据类型
基本数据类型 大小 包装类
boolean --- Boolean
char 16-bit Character
byte 8-bit Byte
short 16-bit Short
int 32-bit Integer
long 64-bit Long
float 32-bit Float
double 64-bit Double
void --- Void
所有数值类型都有正负号。
各种简单数据类型转换优先关系:
byte,short,char –> int –> long –> float –> double
高精度数字
- BigInteger
- BigDecimal
- 使用速度换取精度
4. Java类和成员的修饰符
- public:可以修饰接口,类,成员变量,成员方法,可以进行跨包访问。
- private:可以修饰成员变量,成员方法,只可以在类内进行访问。
- protected:可以修饰成员变量,成员方法,在同一个包内可以访问
- static:可以修饰类,接口,成员变量,成员方法,静态内部类不能对外调用,成员独立于该类的任何实例对象。类变量是全局变量,类方法是全局方法,在其中不能使用super,this,不能创建内部实例。
- final:可以修饰类,接口,成员变量,成员方法,没有子类的类,不能改变变量的值,不能改变值得字段,不能覆盖的方法。
- abstract:可以修饰类,接口,成员变量,成员方法,类中含有没有实现的方法,该类不可以被实例化。所有接口都是抽象的,是接口的缺省修饰符。没有实现的方法。
- synchronized:可以修饰成员方法,用于保持线程同步。
5.只有当变量是类成员是,Java才会给定其默认值:
- boolean –> false
- char –> ‘\u0000’null
- byte –> byte(0)
- short –> short(0)
- int –> 0
- long –> 0L
- float –> 0.0f
- double –> 0.0d
6. Java中数组的定义及初始化
6.1 一维数组的声明
在Java中数组被看成是一个对象,在定义数组的时候有两种定义的方法:
int[] array
int array[]
其中第二种是C/C++的数组声明方式,对于Java来讲推荐第一种。
6.2 一维数组的初始化
动态初始化:数组定义与为数组分配空间和赋值的操作分开进行;
int a[] ; a = new int[3] ; a[0] = 0 ; a[1] = 1 ; a[2] = 2 ; `
静态初始化:在定义数字的同时就为数组元素分配空间并赋值;
int a[] = {0,1,2} ; Time times [] = {new Time(19,42,42),new Time(1,23,54),new Time(5,3,2)} ;
- 还有一种初始化的方式:
int[] nums = new int[]{3, 1, 2, 6, 4, 2}
需要注意的new后面的数组中没有固定的长度。 默认初始化:数组是引用类型,它的元素相当于类的成员变量,因此数组分配空间后,每个元素也被按照成员变量的规则被隐士初始化。
int a [] = new int [5] ;
数组的元素是通过索引访问的。数组索引从 0 开始,所以索引值从 0 到 array.length-1。
从JDK1.5之后出现了Foreach循环或者加强循环,它在不使用下标的情况下对数组进行遍历。
public class TestArray {
public static void main(String[] args) {
double[] myList = {1.9, 2.9, 3.4, 3.5};
// 打印所有数组元素
for (double element: myList) {
System.out.println(element);
}
}
}
###java中含有专门的数组类Arrays,在后面章节中会详细介绍。
6.3 二维数组的定义方式
二维数组可以看做是数组的数组,必输二维数组就一个特殊的一维数组,不过每个数组中保存的是一个指向一个一维数组的引用。例如:
String str[][] = new String[3][4];
6.4 二维数组的初始化
- 动态初始化
int a[][] = new int[2][3];
具体的初始化如下:
String s[][] = new String[2][];
s[0] = new String[2];
s[1] = new String[3];
s[0][0] = new String("Good");
s[0][1] = new String("Luck");
s[1][0] = new String("to");
s[1][1] = new String("you");
s[1][2] = new String("!");