一、java简介博客园:基础
1. java两大核心机制1.1 java虚拟机(Java Virtual Machine)??JVM是一个虚拟的计算机,具有指令集并使用不同的存储区域,负责执行指令、管理数据、内存、寄存器 。
??对于不同的平台有不同的虚拟机,这使得java程序可以跨平台运行 。
1.2 垃圾收集机制(Garbage Collection)问:GC是什么?为什么有GC?
??答:内存处理是编程人员容易出现问题的地方,忘记或者错误的内存回收会导致程序或系统的不稳定甚至崩溃,Java提供的GC功能可以自动监测对象是否超过作用域从而达到自动回收内存的目的,Java语言没有提供释放已分配内存的显示操作方法 。
问:垃圾回收器的基本原理是什么?垃圾回收器可以马上回收内存吗?有什么办法主动通知虚拟机进行垃圾回收?
??答:对于GC来说,当程序员创建对象时,GC就开始监控这个对象的地址、大小以及使用情况 。通常,GC采用有向图的方式记录和管理堆(heap)中的所有对象 。通过这种方式确定哪些对象是"可达的",哪些对象是"不可达的" 。当GC确定一些对象为"不可达"时,GC就有责任回收这些内存空间 。可以 。程序员可以手动执行System.gc(),通知GC运行,但是Java语言规范并不保证GC一定会执行 。
注意:即使有GC存在,Java程序仍会出现内存泄漏和内存溢出问题 。
2. java中JDK、JRE、JVM
- JDK = JRE + 开发工具集
- JRE = JVM + JAVA SE 标准类库

文章插图
3. API文档??API(Application Programming Interface, 应用程序编程接口)是 Java 提供的基本编程接口 。
Java SE API文档下载
二、变量与运算符博客园:变量
博客园:运算符
1. 关键字关键字
2. 标识符2.1 命名规范
- 由汉字、字母、数字、下划线、美元符号组成
- 不能以数字开头
- 不能包含空格
- 严格区分大小写
3. 变量3.1 按数据类型分类基本数据类型
整数类型:byte、short、int、long
浮点类型:float、double
字符型:char
布尔型:boolean
引用数据类型
类:class
接口:interface
数组:[]
3.2 按声明位置分类成员变量: 在类中定义;有初始值;可使用所有的修饰符
- 实例变量:不以static修饰
- 类变量:以static修饰
- 形参:在方法、构造器中定义;可不用初始化
- 方法局部变量:在方法内定义
- 代码块局部变量:在代码块内定义
'a')、转义字符('\t')、十六进制数('\uXXXX')boolean-true、false
文章插图
4. 字符串类型String??String不是基本数据类型,而是引用数据类型 。
4.1 基本数据类型与字符串相互转换
// TestPrimitiveWithString.javaclass TestPrimitiveWithString {public static void main(String args[]) {float f_num = 12.333f;String str = "3.141592653589793";// float转StringString f2s_1 = String.valueOf(f_num);System.out.println(f2s_1);String f2s_2 = Float.toString(f_num);System.out.println(f2s_2);// String转doubledouble d_num = Double.parseDouble(str);System.out.println(d_num);}}执行结果:12.333
12.333
3.141592653589793
5. 运算符5.1 算术运算符
System.out.println(5 % 2);// 1System.out.println(-5 % -2);// -1System.out.println(-5 % 2);// -1System.out.println(5 % -2);// 1// 结论:余数与第一个操作数的符号相同 。5.2 三元运算符// TestTernaryOperator.javaclass TestTernaryOperator {public static void main(String[] args) {char x = 'x';int i = 10;System.out.println(true ? x : i);System.out.println(true ? 'x' : 10);}}执行结果:120
x
解释:
- 如果其中有一个是变量,则按照自动类型转换规则处理成一致的类型 。
- 如果都是常量,若其中一个是char,另一个在整数[0, 65535]间,则按照char处理;若一个是char,另一个是其他,则按照自动类型转换规则处理成一致的类型 。
short s1 = 1;s1 = s1 + 1;s1 += 1;执行结果:报错解释:
其中,
s1 + 1运算结果为int类型,需要强制类型转换;而s1 += 1结果会自动进行类型转换 。5.4 进制转换
int num = 60;// 十进制转二进制String bin_str = Integer.toBinaryString(num);// 十进制转十六进制String hex_str = Integer.toHexString(num);6. 流程控制6.1 switch语句有关规则- 条件表达式的类型必须为:byte、short、int、char、枚举 (jdk 5.0)、String (jdk 7.0) 。
- case子句中的值必须是
- 春季老年人吃什么养肝?土豆、米饭换着吃
- 三八妇女节节日祝福分享 三八妇女节节日语录
- 老人谨慎!选好你的“第三只脚”
- 校方进行了深刻的反思 青岛一大学生坠亡校方整改校规
- 脸皮厚的人长寿!有这特征的老人最长寿
- 长寿秘诀:记住这10大妙招 100%增寿
- 春季老年人心血管病高发 3条保命要诀
- 眼睛花不花要看四十八 老年人怎样延缓老花眼
- 香槟然能防治老年痴呆症? 一天三杯它人到90不痴呆
- 老人手抖的原因 为什么老人手会抖
