学习日记
一、类型转换
1. 理论基础
运算中,不同类型的数据先转换为同一类型,然后进行计算,小数的优先级大于整数。
内存容量由低到高:byte, short, char -> int -> long -> float -> double。
-
强制类型转换:高到低,(类型)变量名
-
自动类型转换:低到高
注意:
- 不能对布尔值进行转换。
- 不能把对象类型转换为不相干的类型。
- 转换的时候可能存在内存溢出(整数高容量到整数低容量)或者精度问题(小数转整数)。
- 操作比较大的数时,注意溢出问题(举例在后)。
2. 实践操作
-
转换过程中内存溢出和精度问题举例
-
强制类型转换和自动类型转换
-
操作比较大的数举例,JDK 7 新特性:数字之间可以用下划线分割,改正:在计算前就转换类型。
二、变量、常量、作用域
1. 理论基础
① 变量
Java 是一种强类型语言,每个变量都必须声明其类型,Java 变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域。如:int num = 3;
中 int
是变量类型,num
是变量名。
注意:
- 每个变量都有类型,类型可以是基本类型,也可以是引用类型。
- 变量名必须是合法的标识符。
- 变量声明是一条完整的语句,因此每一个声明都必须以分号结尾。
根据作用域不同,变量可以分为:类变量、实例变量、局部变量
- 类变量:和实例变量位置相似,但是加关键字 static,从属于类。
- 实例变量:在类里面,方法之外,从属于对象,可以不初始化,若不初始化,则数值类型(除了字符类型)默认值为0或0.0,布尔值默认为 false,除了基本类型,其余的默认值均为 null。
- 局部变量:在方法内有效,必须声明和初始化值。
② 常量
常量(Constant)初始化后不能再改变值,常量可以理解为一种特殊的变量,它的值被设定后,在程序运行的过程中不允许被改变。
如:final double PI = 3.14;
中 PI
为常量名,常量名一般使用大写字符。
2. 实践操作
-
局部变量
-
实例变量
-
类变量
-
常量,在变量的基础上加
final
,修饰符不存在固定顺序。
注意
- 变量的命名规范
变量类型 | 命名规范 | 举例 |
---|---|---|
所有变量、方法、类名 | 见名知义 | 名字(name)、年龄(age) |
类成员变量/局部变量 | 首字母小写+驼峰原则 | monthSalary、lastName |
方法名 | 首字母小写+驼峰原则 | run()、runRun() |
常量名 | 大写字母+下划线 | MAX_VALUE |
类名 | 首字母大写+驼峰原则 | Man、GoodMan |
总结:类名的首字母大写,常量名所有字母大写,其余都是首字母小写。