逐步深入的java学习笔记
![star](https://csdnimg.cn/release/downloadcmsfe/public/img/star.98a08eaa.png)
### 逐步深入的Java学习笔记知识点总结 #### 一、Java环境配置 1. **JAVA_HOME**: 配置JDK的目录。这是Java环境的基本配置之一,用于指示系统JDK安装的位置。 - **Linux系统**: ```bash JAVA_HOME=/opt/jdk1.5.0_06 ``` - **Windows系统**: - 右键点击“我的电脑”,选择“属性”>“高级”>“环境变量”。 - 新建或编辑名为`JAVA_HOME`的系统变量,值设置为JDK安装目录。 2. **CLASSPATH**: 指定Java运行时需要用到的类库路径。 - **Linux系统**: ```bash CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar ``` - **Windows系统**: - 在环境变量中添加`CLASSPATH`变量,值为`.;%JAVA_HOME%\lib\tools.jar;%JAVA_HOME%\lib\dt.jar`。 3. **PATH**: 指定可执行程序的位置。 - **Linux系统**: ```bash PATH=$PATH:$JAVA_HOME/bin:. ``` - **Windows系统**: - 添加`%JAVA_HOME%\bin`到PATH环境变量中。 4. **环境变量的声明**: - 在Linux系统中使用`export JAVA_HOME CLASSPATH PATH`命令来声明这些环境变量为全局变量。 #### 二、Java的运行过程 - **编译**: 将Java源代码转换为字节码文件。 - **解释**: 运行Java字节码文件。 - Java采用“先编译后解释”的方式,这使得Java程序既具有跨平台性又具有较高的执行效率。 - **编译步骤**: - Java源代码文件(.java文件) → `Java编译器(javac)` → Java字节码文件(.class文件)。 - **解释步骤**: - Java字节码文件(.class文件) → `Java解释器(java)` → 执行Java字节码。 #### 三、Java垃圾回收机制 - **垃圾回收**: 由Java虚拟机(JVM)中的一个后台线程GC负责。 - 当虚拟机检测到内存不足时,会触发垃圾回收过程。 - 用户可以通过调用`java.lang.System.gc()`来建议进行垃圾回收,但系统可能会忽略这个请求,根据当前内存情况决定是否执行垃圾回收。 - **垃圾回收对象**: - 不再被任何引用所指向的对象被认为是垃圾,即不再被使用的对象。 #### 四、Java安全性 - **沙箱机制**: Java提供了沙箱模型来限制程序的行为。 - 加载有用的类文件,忽略不必要的类文件。 - 校验字节码,确保只执行允许的操作。 - 确保代码与虚拟机特性的兼容性。 - 检查代码是否存在破坏行为。 - 确认类型匹配性和正确的类型转换。 #### 五、Java源代码结构 - **包的使用**: - 包是用来组织Java源文件的一种方式,类似于文件夹。 - 声明包名称的语法为`package 包名;`,必须位于文件的第一行。 - 编译时使用`javac -d 目标目录 源文件`,可以自动创建所需的包结构。 - **类的定义**: - Java源文件中可以包含多个类,但只有一个公共类(public class)。 - 文件名必须与公共类名一致,并以`.java`为扩展名。 - 编译后每个类会生成一个`.class`文件。 - 主类必须包含`public static void main(String[] args)`方法,这是程序的入口点。 - **执行程序**: - 使用`java 包名.类名`命令执行编译后的Java程序。 - 如果类位于默认包中,则可以直接使用类名执行。 #### 六、Java注释 - **单行注释**: `//` - **多行注释**: `/*...*/` - **文档注释**: `/**...*/`,用于生成文档。 #### 七、标识符与关键字 - **标识符**: - 由字母、数字、下划线和美元符号组成,不能以数字开头。 - 大小写敏感。 - 不能使用Java关键字和保留字作为标识符。 - **关键字**: - 关键字都是小写的。 - JDK 1.2新增了`strictfp`,用于精确浮点运算。 - JDK 1.4新增了`assert`,用于断言编程。 - JDK 1.5新增了`enum`,用于枚举类型。 通过以上总结,我们可以看到Java的学习过程是一个逐步深入的过程,从环境配置到源代码编写,再到垃圾回收机制的理解,每一步都需要扎实的基础知识和实践经验。希望这份笔记能够帮助初学者更好地理解Java语言的核心概念和技术细节。
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![avatar-default](https://csdnimg.cn/release/downloadcmsfe/public/img/lazyLogo2.1882d7f4.png)
- clamjared2013-02-21不错不错,看着挺好
![avatar](https://profile-avatar.csdnimg.cn/87dfc38a10534d51860065b19089230d_wlj7850.jpg!1)
- 粉丝: 0
- 资源: 31
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![voice](https://csdnimg.cn/release/downloadcmsfe/public/img/voice.245cc511.png)
![center-task](https://csdnimg.cn/release/downloadcmsfe/public/img/center-task.c2eda91a.png)
最新资源
- Python大作业-爬虫(高分大作业)
- Python 图片压缩工具
- qt4.8.6资源,用户qt安装,编译与学习
- (176465412)电气设计视频教程-Eplan.P8
- Python大作业爬虫项目并且用web展示爬虫的内容(高分项目)源码+说明
- Python项目-实例-27 生成词云图.zip
- (176566822)数据库课程设计ssm027学校运动会信息管理系统+jsp.sql
- C# WPF-激光焊接机配套软件源码及文档(带视觉需halcon)
- (177333248)c++实现的仿QQ贪吃蛇大作战多人联机游戏.zip
- Python大作业-爬虫(高分大作业).zip
- (177487602)c++ 家谱管理系统.zip
- IMG-8274.GIF
- (177938850)115-基于51单片机和PROTEUS的基于C51单片机的智能交通灯设计.zip
- 基于微信小程序的宏华水利小程序.zip
- (OC)数据加载SVG图片
- linux3.8.6内核资源
![feedback](https://img-home.csdnimg.cn/images/20220527035711.png)
![feedback-tip](https://img-home.csdnimg.cn/images/20220527035111.png)
![dialog-icon](https://csdnimg.cn/release/downloadcmsfe/public/img/green-success.6a4acb44.png)