大纲
这系列博文主要是将自己之前学习的一些java基础内容进行归纳与总结。
JAVA发展史(了解一下)
1995年5月23日sun公司正式发布java
1996年6月sun公司发布了第二代Java平台(简称为Java2)的3个版本:J2ME、J2SE、J2EE
2009年Oracle公司收购Sun
Oracle 公司于 2014 年 3 月 18 日发布 Java 8
几个缩写解释:
JVM (java vitual machine) java虚拟机 解释 .class文件
JRE (java runtime environment) java运行环境 包含JVM + 类库
JDK (java Development Kit) java开发工具包 包含JRE + 开发工具
JAVA的特点:跨平台,面向对象
设置环境变量(windows)
两种方式
1.直接在系统变量Path
中加上C:\Program Files\Java\jdk1.8.0_144\bin
路径即可
2.先新建一个JAVA_HOME
变量,变量值为C:\Program Files\Java\jdk1.8.0_144
,再在Path
中添加%JAVA_HOME%\bin
ps: 在用户变量中或者系统变量中添加自主选择,Path变量是取用户变量和系统变量的Path合集
一些编码规范
类名:采用大驼峰命名法(每个单词首字母都大写) UserOrder
变量名:采用小驼峰命名法(第一个单词首字母小写,后续单词首字母大写) userOrder
包名:采用全小写命名,单词之间用逗号分隔,并且使用单数形式,不能使用java命名 user.order
常量名: 所有字母都大写,多单词组成时用下划线进行分割 USER_ORDER
标识符:a-z A-Z 0-9 _ $ 不能以数字开头,不推荐以_、$开头或结尾,不能用关键字和保留字
布尔类型的变量不使用is开头,某些框架会解析错误
注释://
单行注释, /*
多行注释 */
,/**
文档注释 */
编码格式
- ASCII (American Standard Code for Information Interchange) 美国信息交换标准码
65~90 A~Z 97~122 a~z
- ISO-8859-1
单字节编码,向下兼容ASCII
- GB2312
国标码,包含6763个汉字
- GBK
扩展的GB2312,包含21003个汉字
- Unicode
统一码,万国码
- UTF-8 (Unicode Transformation Format) Unicode格式转换
如果只有一个字节则其最高二进制位为0,表示一个ASCII字符;
如果是多字节,其第一个字节从最高位开始,连续的二进制位值为1的个数决定了其编码的字节数,其余各字节均以10开头;
Unicode编码(十六进制) | UTF-8 字节流(二进制) |
---|---|
000000-00007F | 0xxxxxxx |
000080-0007FF | 110xxxxx 10xxxxxx |
000800-00FFFF | 1110xxxx 10xxxxxx 10xxxxxx |
010000-10FFFF | 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx |
对String(byte[] bytes, Charset charset)的理解
先要确定字符原本是以什么格式解码的(就用什么格式编码)。
String iso = "中国"; // utf-8
iso = new String(iso.getBytes("utf-8"), "gbk"); // 乱码
iso = new String(iso.getBytes("gbk"), "utf-8"); // 中国