### 华为JAVA培训讲义知识点总结 #### 一、Java环境配置 - **JAVA_HOME**: 指定JDK的安装目录。这是最基本的环境变量,对于任何Java应用来说至关重要,因为很多工具都需要通过这个环境变量来定位JDK的具体位置。 - **CLASSPATH**: 用于指定Java运行时需要查找的类库或依赖文件的位置。它告诉Java虚拟机(JVM)去哪里寻找用户自定义的类和资源。 - **PATH**: 设置JDK的bin目录路径,以便在命令行中可以直接调用Java相关的工具。 #### 二、Linux系统环境变量配置 在Linux环境下,可以通过修改`~/.bash_profile`文件来设置环境变量: ```bash JAVA_HOME=/opt/jdk1.5.0_06 CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar PATH=$PATH:$JAVA_HOME/bin:. ``` 使用`export`命令使这些设置生效: ```bash export JAVA_HOME CLASSPATH PATH ``` #### 三、Windows系统环境变量配置 在Windows系统中,可以通过“我的电脑”属性中的“高级”选项卡来设置环境变量。具体步骤如下: 1. 右键点击“我的电脑”选择“属性”。 2. 在“高级”选项卡中点击“环境变量”按钮。 3. 在系统变量中添加或修改`JAVA_HOME`、`CLASSPATH`和`PATH`等环境变量。 #### 四、Java的运行过程 - **编译**: Java源代码(.java文件)通过`javac`编译器被编译成字节码(.class文件)。 - **解释**: Java虚拟机(JVM)负责解释执行字节码文件。 #### 五、Java的垃圾回收机制 - Java采用自动垃圾回收机制(Garbage Collection, GC)来管理内存,通常由一个后台线程执行。 - 当虚拟机检测到内存不足时,会触发GC进行垃圾回收。 - 不过,开发者也可以通过`System.gc()`显式地请求进行垃圾回收,但这并不意味着JVM一定会立即执行垃圾回收。 #### 六、Java安全性特点 - **沙箱模型**: Java采用了沙箱模型来限制代码执行的行为,确保只允许安全的操作被执行。 - 加载阶段会验证类文件的有效性和合法性。 - 字节码验证器检查字节码是否符合规范。 - 动态链接和类型检查进一步增强了安全性。 #### 七、Java源代码编写与执行 示例代码如下: ```java package mypack; public class HelloWorld { public static void main(String[] args) { System.out.println("Hello World"); } } ``` - **文件名**: 必须与`public`类名一致,并以`.java`作为扩展名。 - **包结构**: 使用`package`关键字声明包名。每个`.java`文件可以包含多个类,但只能有一个`public`类。 - **编译**: 使用`javac -d <目录> HelloWorld.java`命令编译。`-d`参数用于指定编译后的`.class`文件的存储目录。 - **执行**: `java mypack.HelloWorld`,需要指定完整的包名和类名。 #### 八、包(package)的使用 - **声明**: 使用`package`关键字声明包名。例如:`package p1.p2;` - **导入**: 使用`import`语句导入其他包中的类。例如:`import p1.p2.MyClass;` 或 `import p1.p2.*;` #### 九、注释 - **单行注释**: `//`后面的文字会被编译器忽略。 - **多行注释**: `/* ... */`之间的文字会被编译器忽略。 - **文档注释**: `/** ... */`用于生成API文档。 #### 十、标识符 - **命名规则**: - 可以由字母、数字、下划线和美元符号`$`组成。 - 不能以数字开头。 - 大小写敏感。 - 不能使用Java关键字和保留字作为标识符。 以上是对华为JAVA培训讲义的主要知识点进行了详细的阐述,希望对学习Java编程有所帮助。
- 粉丝: 1
- 资源: 8
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- (源码)基于SimPy和贝叶斯优化的流程仿真系统.zip
- (源码)基于Java Web的个人信息管理系统.zip
- (源码)基于C++和OTL4的PostgreSQL数据库连接系统.zip
- (源码)基于ESP32和AWS IoT Core的室内温湿度监测系统.zip
- (源码)基于Arduino的I2C协议交通灯模拟系统.zip
- coco.names 文件
- (源码)基于Spring Boot和Vue的房屋租赁管理系统.zip
- (源码)基于Android的饭店点菜系统.zip
- (源码)基于Android平台的权限管理系统.zip
- (源码)基于CC++和wxWidgets框架的LEGO模型火车控制系统.zip