Java基础知识整理2
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Java知识点总结
1环境搭建与开发
1.1环境变量
JAV A_HOME:Java的安装目录;
CLASSPATH:指定一个路径列表,用于搜索Java在编译或运行时需要用到的类(.class文件);
PATH:指定一个路径列表,用于搜索可执行文件。
1.2Java SDK应用
编译:Javac类名.class;
运行:Java类名;
打包:jar cf test.jar test(把当前目录下的test目录下的所有文件压缩到test.jar文件中)。
2变量与常量
Java中的常量用保留字final来实现。
变量:局部变量(local variable)、实例变量(instance variable)、类变量(class variable);任何变量在使用前都必须初始化,局部变量必须显示初始化,实例变量在类的构造方法被调用时初始化(分配默认值),类变量在类被加载时被初始化。
3标识符
3.1命名
在Java语言中,标识符的定义规则是以字母、下划线、美元符开始,后面可以跟字母、下划线、美元符、数字。
因为Java语言使用Unicode字符集,所以对字母不仅限于英文,还可以是日文、韩文、阿拉伯文、中文等。
区分大小写,没有字数限制。
3.2关键字
3.2.1static
static方法中不能有this和super关键字(static方法不是“面向对象”的,而是“面向类”的)。
static方法中只能访问所属类的static方法和变量。
static数据成员的初始化:在第一次生成该类的对象时初始化。
3.2.2final
1)final数据
a)static final
●更加典型的定义方式是public static final;
●占用一段不能改变的存储空间;
●代表编译时常量,即在编译器就能知道其值(如果只声明为final或
者static,是在运行时才知道值)。
●全部用大写字母命名,单词之间用下划线隔开。
b)final数据与final引用
●final数据的值不能被改变;
●final引用是指无法将其指向一个新的对象(数组也是一种引用),对
象本身的值是可以改变的。
c)空白final(声明为final却未赋初始值)
●可以做到根据对象有所不同,又保持恒定不变的特性;
●必须保证使用前已经初始化:在定义处赋值或者在构造器中赋值。
2)final参数
●无法在方法中更改引用所指向的对象。
3)final方法
●禁止覆盖,防止任何继承类修改它的定义;
●private方法都是final的,因此private方法无法覆盖。
4)final类
●不允许继承该类;
●final类中的所有方法都隐式指定为final的。
3.2.3transient
主要作用:防止对象的敏感信息被序列化,保证安全性。
transient用于在一个特定对象的一个域上关闭序列化,当该对象被序列化时,transient型变量不包含在序列化表示中。
原因:对于某些敏感信息(如密码),一经序列化处理,便可以通过读取文件或者拦截网络传输的方式访问到。
4运算符
4.1算术运算符
4.1.1“/”运算符
如果被除数和除数都是整数,那么商也是整数;
如果被除数和除数中有一个是浮点数,商是浮点数;
当被除数是整数类型时,零不能作为除数(运行时报错);当被除数是浮点型时,除数为0,结果为Infinity。
4.1.2“%”运算符
既可以对整型数据取模,也可以对实型数据取模;
任何整数都不能对0取模;
不管是整型还是实型的取模运算,余数的符号与被除数的符号相同(若a%b,结果的符号与a相同)。
4.2位运算符
<<:左移
>>:带符号右移(最高位为0则补0,为1则补1)
>>>:无符号右移(补0)
如果对char、byte、short类型的数据进行移位处理,那么在移位进行之前,它们会被转换为int类型,并且得到的结果也是一个int类型的值。
对char、byte、short进行运算时,都会得到一个int结果,必须将其显示地类型转换回原来的类型,在窄化转换的过程中可能会造成信息的丢失。
4.3赋值运算符
如果赋值运算符两边的数据类型不相同,则需要进行类型转换,即“向左看齐”;
如果这种转换是由小向大的转换,系统将自动进行,如果是由大向小的转换,则需强制类型转换。
5数据类型
new将对象存储在堆里,故用new来创建一个小的对象,特别是小的简单的变量,往往不是很有效,因此,java不用new来创建对象,而是创建一个并非是引用的自动变量,这个变量直接存储值,并置于堆栈中,因此更加高效。
基本数据类型整型:byte,short,int,long 实型:float,double
字符型:char
布尔型:boolean
复合数据类型数组类接口
5.1整型变量
数据类型所占位数值范围
byte8位-128~127
short16位-32768~32767
int32位-231~231-1
long64位-263~-263-1
在进行带有byte、short、int三种类型并存的表达式运算时,系统都会将short和byte 都先提升为int类型。
5.2浮点型变量
●单精度浮点型float:32位;
●双精度浮点型double:64位。
5.3字符型数据
数据类型所占位数值范围
char16位0~65536
●单引号括起来的单个字符;