PART1: Java基础知识概述与Java的下载安装
1)Java语言概述:
① Java的发展史:
- 詹姆斯·高斯林(James Gosling)
- 1977年获得了加拿大卡尔加里大学计算机科学学士学位,1983年获得了美国卡内基梅隆大学计算机科学博士学位,毕业后到IBM工作,设计IBM第一代工作站NeWS系统,但不受重视。后来转至Sun公司,1990年,与Patrick,Naughton和Mike Sheridan等人合作“绿色计划”,后来发展一套语言叫做“Oak”,后改名为Java。
② Java语言发展史:
-
Java Development Kit
- 1.0.2
- 1.1.1 → 1.1.6 → 1.1.7 → 1.1.8
- 1.2.1
-
Java 2 SDK
- 1.2.2
- 1.3.0 → 1.3.1
- 1.4.0 → 1.4.1 → 1.4.2 → 1.5.0(5.0) → 1.6.0(6.0) → 1.7.0(7.0)
- jdk8
③ Java语言平台版本:
- J2SE (Java 2 Platform Standard Edition) 标准版:为开发普通桌面和商务应用程序提供的解决方案。该技术体系是其他两者的基础,可以完成一些桌面应用程序的开发。
- J2ME (Java 2 Platform Micro Edition) 小型版:为开发电子消费产品和嵌入式设备提供的解决方案。
- J2EE (Java 2 Platform Enterprise Edition) 企业版:为开发企业环境下的应用程序提供的一套解决方案。该技术体系中包含的技术如 Servlet、Jsp等,主要针对于Web应用程序开发。
④ Java语言的特点:
- 简单性
- 解释性
- 面向对象
- 高性能
- 分布式处理
- 多线程
- 健壮性
- 动态
- 结构中立
- 安全性
- 开源
- 跨平台
⑤ JRE与JDK:
2)Java的安装:
JDK可以在Oracle官网中下载(注意:这里下载的是Java 8版本)。
PART2: Java程序执行流程
1)程序解析:
- 编写Java源代码程序,扩展名为
.java
。 - 在命令行模式中,输入
javac
命令对源代码进行编译,生成字节码文件:javac 源文件名.java
- 编译完成后,如果没有报错信息,输入
java
命令对.class
字节码文件进行解释运行,执行时不需要添加.class
扩展名:java HelloWorld
2)运行与工作原理:
3)开发工具介绍:
编写Java程序可以使用很多种工具:
- Notepad(微软操作系统自带)
- Notepad++
- Eclipse
- MyEclipse
4)编写一段代码Hello World:
- 首先定义一个类:
class 类名 {}
- 在类定义后加上一对大括号:
class 类名 { }
- 在大括号中间添加一个主(main)方法/函数:
public static void main(String [] args) { }
- 在主方法的大括号中间添加一行输出语句:
System.out.println("hello world");
5)常见错误:
- 文件扩展名隐藏导致编译失败
class
写错(例如:Class claas…)- 类名格式有问题(暂时全部使用英文)
- 类名后面的大括号匹配不正确
main
方法格式错误:public static void main(String [] args) { }
main
方法大括号缺失- 打印语句拼写错误:
System.out.println("");
- 引号使用错误,使用成中文全角引号
PART3: 环境变量
1)Path环境变量配置的作用:
- 程序的执行需要使用外部指令
javac
,但是javac
指令仅仅能在JDK安装目录下的bin
目录下运行,因此程序只能写入bin
目录。 - 程序开发过程中,不能将源代码写入JDK的安装目录,因此需要将源程序保存到任意位置的指定目录(英文目录),所以需要使
javac
指令在任意目录下可以运行。
2)Path环境变量配置方式一:
通过配置 path
环境变量,将 javac
指令所在目录也就是JDK安装目录下的 bin
目录配置到 path
变量下,即可使 javac
指令在任意目录下运行:
- Win11/10系统:右键点击桌面计算机 → 选择属性 → 选择高级系统设置 → 选择高级选项卡 → 点击环境变量 → 下方系统变量中查找
path
→ 双击path
- XP系统:右键点击桌面计算机 → 选择属性 → 选择高级选项卡 → 点击环境变量 → 下方系统变量中查找
path
→ 双击path
- 将JDK安装目录下的
bin
目录添加到最左边并添加分号:path %JAVA_HOME%\bin;
3)Classpath环境变量配置方式:
- 创建新的变量名称:
classpath
- 值设定为指定的还有
class
文件的目录,多个目录间使用分号(;
)分割 - 作用:使
classpath
目录中的.class
文件可以在任意目录运行 - 技巧:通常将配置的目录最前面添加
.
配置,即便当前目录,使.class
文件搜索时首先搜索当前目录,然后根据目录配置的顺序依次查找,找到后即运行,因此classpath
目录中的配置存在先后顺序
4)Path与Classpath的区别:
path
环境变量里面记录的是可执行性文件,如.exe
文件,对可执行文件先在当前路径去找,如果没找到就去path
环境变量中配置的路径去找classpath
环境变量里记录的是Java类的运行文件所在的目录
PART4: 关键字、标识符
1) 关键字:
- 关键字概述:被Java语言赋予特定含义的单词
- 关键字特点:
- 组成关键字的字母全部小写
- 关键字注意事项:
goto
和const
作为保留字存在,目前并不使用- 类似IDEA这样的集成工具,针对关键字有特殊的颜色标记,非常直观
- 所有关键字:
2)标识符:
- 标识符概述:给类,接口,方法,变量等起名字时使用的字符序列
- 组成规则:
- 英文大小写字母
- 数字字符
$
和_
- 注意事项:
- 不能以数字开头
- 不能是Java中的关键字
- 区分大小写
- 标识符的常见命名规则:
- 包(其实就是文件夹,用于解决相同类名问题)
- 单级和多级
- 类或者接口
- 一个单词和和多个单词
- 方法和变量
- 一个单词和和多个单词
- 常量
- 一个单词和和多个单词
- 包(其实就是文件夹,用于解决相同类名问题)
3)注释:
- 注释概述:用于解释说明程序的文字
- Java中注释分类格式:
- 单行注释
//注释文字
- 多行注释
/* 注释文字 */
- 文档注释
/** 注释文字 */
- 单行注释
- 注释的好处:
- 解释说明程序,提高程序的阅读性
- 可以帮助我们排错
注:(注释是一个程序员必须要具有的良好编程习惯。初学者编写程序可以养成习惯:先写注释再写代码。将自己的思想通过注释先整理出来,在用代码去体现。因为代码仅仅是思想的一种体现形式而已。)
PART5: 常量与进制
1)常量:
- 常量概述:
- 在程序执行的过程中其值不可以发生改变
- Java中常量分类:
- 字面值常量
- 自定义常量
- 字符串常量:用双引号括起来的内容
- 整数常量:所有整数,例如 12, 23
- 小数常量:所有小数,例如 12.34, 56.78
- 字符常量:用单引号括起来的内容,例如 ‘a’, ’A’, ’0’
- 布尔常量:较为特有,只有 true 和 false
- 空常量:null
Java针对整数常量提供了4种表现形式:
- 二进制:以
0b
开头 - 八进制:以
0
开头 - 十进制:整数默认是十进制的
- 十六进制:以
0x
开头
2)进制概述:
- 进制:就是进位制,是人们规定的一种进位方法。对于任何一种进制--X进制,就表示某一位置上的数运算时是逢X进一位。二进制就是逢二进一,八进制是逢八进一,十进制是逢十进一,十六进制是逢十六进一。
不同进制的数据组成:
- 二进制:由0,1组成。以
0b
开头 - 八进制:由0,1,…7组成。以
0
开头 - 十进制:由0,1,…9组成。整数默认是十进制的
- 十六进制:由0,1,…9,a,b,c,d,e,f(大小写均可)。以
0x
开头
进制转换:
- 其他进制到十进制:通过十进制推出结论
- 把
0b100
,0100
,0x100
转换成十进制
- 把
- 十进制到其他进制:通过十进制推出结论
- 把 52 分别表示成二进制,八进制,十六进制
十进制和二进制的快速转换:
- 8421码
- 100 转成二进制
- 101101 转成十进制
二进制和八进制,十六进制如何转换:
- 以十进制作为桥梁
- 二进制到八进制:3位组合
100 110
- 二进制到十六进制:4位组合
0010 0110
- 二进制到八进制:3位组合
有符号数据表示法:
- 在计算机内,有符号数有3种表示法:原码、反码和补码。所有数据的运算都是采用补码进行的。
- 原码:就是二进制定点表示法,即最高位为符号位,“0”表示正,“1”表示负,其余位表示数值的大小。
- 反码:正数的反码与其原码相同;负数的反码是对其原码逐位取反,但符号位除外。
- 补码:正数的补码与其原码相同;负数的补码是在其反码的末位加1。
这是Java的基础知识的第一部分,后续我会跟进一些相应的练习题,还有后面的部分,希望喜欢的能够点个关注。
标签:Java,常量,环境变量,汇总,目录,path,java,基础知识,十进制 From: https://www.cnblogs.com/xu-sy122/p/18331121