1. Java命名习惯
1)包名字母一律小写;
2)类名,接口名应该使用名词,每个单词首字母大写;
3)方法名,第一个单词小写,后面每个单词首字母大写;
4)变量名,第一个单词小写,后面每个单词首字母大写;
5)常量名中的每个字母一律大写。
2. 垃圾回收(gc)
1)后台线程;
2)管理堆内存;
3)两件基本任务:发现无用对象;回收无用对象所占空间。
3. 面向对象的基本特征
1)封装(Encapsulation):将对象的实现细节隐藏起来,通过一些公用方法来暴露对象功能;
2)继承(Inheritance):子类继承父类后,获得父亲的属性和方法;
3)多态(Ploymorphism):子类对象可以直接赋给父类变量,运行时表现为子类行为。注意:编译时如果父类变量调用了子类特有方法,则必须强制类型转换。
4. 基本数据类型
整型:byte 1 字节, short 2 字节,int 4 字节,long 8 字节;
字符:char 2 字节;
浮点:float 4 字节,double 8 字节;
布尔:boolean 1 字(bit)。
自动转换:
char ----------------------> int -----------> long -------------> float --------------> double
byte ---------->short ------^
5. 位运算
位运算是以补码为基本形式进行
1)正数补码为本身,正数反码为本身;
2)负数补码为反码+1,最高位是符号位。
* 取反码时符号位不变;
** 按位取反,则符号位包括在内
即,对负数来讲,计算原码和补码都不包括符号位。
6. switch分支语句
byte,short,,char,int,枚举类型;
Java 7新增String类型。
7. 数组
数组引用变量只是一个引用。
实际的数组对象被存储在对内存中,如果引用该数组对象的数据引用变量是一个局部变量,那么它存储在栈内存中。
** 当一个方法执行时,每个方法都会建立自己的内存栈,这个方法内定义的变量将会逐个放入这块内存中。当在程序中创建一个对象,它被保存在运行时数据区(堆内存)。
8. Java常用包
9. this, superjava.lang: 核心类;
java.util: 工具类;
java.net: 网络编程;
java.io: 输入输出;
java.text: 格式化;
java.sql: JDBC;
java.awt
javax.swing
10. toString方法子类方法中调用父类被覆盖的方法用super, 调用子类其他方法,用this;
构造器调用父类构造器,用super,调用子类另一个构造器,用this。
Object类有toString方法,打印对象时会调用。
如果子类没有重写toString,则返回 运行时类名 + @ + hashCode(6位十六进制)
11. == 和 equals 方法
==必须指向同一地址才为true,所以比较值相等应该用equals方法
但Object类中equals方法和==是一样的,因此子类需要重写该方法来实现值相等。