0
点赞
收藏
分享

微信扫一扫

Kafka 高可用

鱼满舱 2023-10-09 阅读 20
java

思维导图: 

前言:

# 第2章 Java编程基础

## 学习目标
- 掌握Java的基本语法,熟悉Java程序基本格式、注释、关键字、常量与标识符的定义。
- 理解和使用Java中的变量及其数据类型,进行数据类型转换。
- 使用Java的各类运算符如算术、赋值、比较和逻辑运算符。
- 熟练使用选择结构语句如if、三元运算符和switch。
- 掌握Java循环结构如while、do-while、for循环及其嵌套和跳转。
- 定义和调用Java方法,了解方法的重载。
- 使用Java数组,对批量数据进行操作。

 

 2.1 Java基本语法

## 2.1.1 Java基本语法

Java,与其他编程语言一样,具有一套特定的语法规则,例如代码格式、标识符定义和关键字使用等。

### 2.1.1 Java程序的基本格式

一个Java程序需要放在类中。类通过`class`关键字来定义,并可以使用修饰符进行修饰。

修饰符 class 类名 {
    程序代码
}

**注意事项**:

1. Java代码包括结构定义语句和功能执行语句。每个功能执行语句后必须使用分号(`;`)结束。
   
   例如:
 

System.out.println("这是第一个Java程序!");

2. Java是大小写敏感的。

3. 尽管Java的代码排版格式不严格,出于可读性的考虑,应编写整齐的代码。

   常见格式:

public class HelloWorld {
    public static void main(String[] args) {
        System.out.println("这是第一个Java程序!");
    }
}

4. 在Java中,一个连续的字符串不可以分为两行书写。如果需要分行,可以使用`+`连接字符串。

   错误的写法:
 

   System.out.println("这是第一个
   Java程序!”);

   正确的写法:
 

System.out.println("这是第一个" +
"Java程序!");

# 2.1.2 Java中的注释

在Java编程中,为了提高代码的可读性和维护性,注释是不可或缺的。注释能够帮助其他开发者快速理解代码的逻辑、功能和用途。

## Java注释的作用

- **描述代码**:注释是对代码的简单描述,可以使得其他开发者更快速地理解代码的逻辑和功能。
- **不参与编译**:Java注释只存在于源文件中,编译时会被忽略,不会被编译到字节码文件中。

## Java中的注释类型

### 1. 单行注释

- 使用`//`来标识。
- 主要用于解释单行代码,如变量的定义。

int c = 10; // 定义一个整型变量

### 2. 多行注释

- 使用`/*` 开始和 `*/` 结束。
- 用于注释多行代码,可以是一段逻辑或者一个代码块。

/* 
int c = 10;
int x = 5;
*/

### 3. 文档注释

- 使用`/**` 开始和 `*/` 结束。
- 主要用于为代码生成文档,可以通过`javadoc`命令提取出来,生成API文档。

/**
* @author 黑马程序员
* @version 1.0
*/

**常用javadoc标签**:

- `@author`: 标识作者
- `@deprecated`: 标识过期的类或方法
- `@exception`: 标识抛出的异常
- `@param`: 标识方法的参数
- `@return`: 标识方法的返回值
- `@see`: 标识参考链接或相关内容
- `@serial`: 标识序列化属性
- `@version`: 标识版本
- `@throws`: 标识抛出的异常

## 注释的嵌套

- 单行注释可以嵌套在多行注释中。

/*
int c = 10;
// 定义一个整型的c
int x = 5;
*/

- 多行注释不可以嵌套。如下例子会导致编译错误,因为第一个 `/*` 和第一个 `*/` 会匹配,而第二个 `*/` 无法找到匹配的 `/*`。

/* int c = 10; */
int x = 5;
/* ... */

注释可能导致的编译错误,在实际编程中应该避免多行注释的嵌套使用。

---

以上就是2.1.2关于Java中的注释的笔记内容,详细介绍了Java中的三种注释方式及其使用方法,以及注释嵌套的规则和注意事项。

 2.1.3 Java中的标识符

在Java编程中,标识符是对程序中的元素,如变量、方法、类等,给予的名称。这些名称帮助程序员理解和组织代码。

## 基础规则

1. **组成**:标识符可以由字母、数字、下画线(_)和美元符号($)组成。
2. **开始**:标识符不能以数字开头。
3. **关键字**:标识符不能是Java中的关键字。

### 合法的标识符示例
- `username`
- `username123`
- `userName`
- `Susername`

### 不合法的标识符示例
- `123username`:不能以数字开头
- `Class`:不能是关键字
- `98.3`:不能以数字开头,且不可包含`.`这种特殊符号
- `Hello World`:不可包含空格或其他特殊字符

## 命名规范

为了使代码更具可读性和统一性,Java有一套广泛接受的命名规范,如下:

1. **包名**:全部小写,例如:`cn.itcast.test`。
2. **类名和接口名**:每个单词的首字母都大写,例如:`ArrayList`、`Iterator`。
3. **常量名**:全部大写,单词间用下划线(_)连接,例如:`DAY_OF_MONTH`。
4. **变量名和方法名**:
   - 第一个单词首字母小写。
   - 从第二个单词开始,每个单词的首字母大写,例如:`lineNumber`、`getLineNumber`。
5. **有意义的命名**:尽量使用有意义的英文单词或缩写来定义标识符,使得程序便于理解。如,用`userName`定义用户名,`password`定义密码等。

---

以上便是2.1.3节关于Java中的标识符的内容概述,其中详细介绍了标识符的定义、合法与不合法的示例以及命名规范建议。

 2.1.4 Java中的关键字

# 2.1.4 Java中的关键字

在Java编程中,关键字是预先定义的具有特殊含义的词汇。它们是编程语言的基础元素,用于定义、组织和操作数据,控制流程等。

## 关键字列表

以下是Java中的关键字:

注意:

  • truefalsenull 虽然在某些上下文中表现得像关键字,但它们实际上是字面值,不被视为关键字。
  • constgoto 被视为保留关键字,尽管在当前版本的Java中它们没有特定的功能。

这个分类是基于关键字的主要用途和功能进行的,但需要注意的是,有些关键字可能适用于多个类别。

## 关键点

1. **关键字特点**:Java中的关键字都是小写。
2. **关键字与标识符**:不能使用关键字作为标识符来命名变量、类等。
3. **保留的关键字**:`const`和`goto`都是Java中的保留关键字,尽管它们目前在Java中没有任何意义,但仍不应该用作标识符。
4. **特殊值**:`true`、`false`和`null`虽然技术上不是关键字,但它们在Java中有特殊的含义,因此也不应当作为标识符使用。

---

以上为2.1.4节关于Java中的关键字的内容概要。这部分主要介绍了Java的关键字及其重要性,并提供了关键字的完整列表和使用时需要注意的要点。

 2.1.5 Java中的常量

## 2.1.5 Java中的常量

常量是在程序中不可变的数据值。例如数字`1`,字符`'a'`,浮点数`3.2`等。Java中的常量可以分类为以下几种:

### 1.整型常量
整型常量是整数类型的数据,可通过以下四种方式表示:

- **二进制**:以`0b`或`0B`开头的数字序列。例如:`0b01101100`,`0B10110101`
- **八进制**:以数字`0`开头的数字序列。例如:`0342`
- **十进制**:由数字`0-9`组成的数字序列。例如:`198`
- **十六进制**:以`0x`或`0X`开头,后接数字`0-9`或`A-F`的数字序列。例如:`0x25AF`

### 2.浮点数常量
浮点数常量用于表示小数。它们可以是单精度(`float`)或双精度(`double`):

- 单精度浮点数以`F`或`f`结尾。例如:`2e3f`
- 双精度浮点数以`D`或`d`结尾或无后缀。例如:`3.6d`, `3.84`
- 浮点数还可以用指数形式表示。例如:`5.022e+23f`

### 3.字符常量
字符常量用于表示单一字符,需用单引号(`'`)括起来。例如:`'a'`, `'1'`, `'\u0000'`

### 4.字符串常量
字符串常量用于表示字符序列,需用双引号(`"`)括起来。例如:`"HelloWorld"`, `"123"`, `"Welcome \n Xxx"`

### 5.布尔常量
布尔常量有两个值:`true` 和 `false`。

### 6.null常量
`null` 常量代表一个空的对象引用。

---

**附加知识**:**十进制数与二进制数的转换**

- **十进制转二进制**:这是一个连续除以2并取余的过程。每一步的余数构成了二进制表示。
  
  例如:十进制的`6` 转为二进制是 `110`.

- **二进制转十进制**:从右到左,每个二进制位乘以`2`的相应次方,然后加起来。

  例如:二进制的 `01100100` 转为十进制是 `100`.

此部分内容为对Java常量的基本介绍。在实际应用中,常量的使用和理解都是基础,为后续的编程工作提供了基础和支持。

 

 

 

 

 总结:

### Java基本语法的重点:

1. **数据类型**:
   - 原始数据类型:`int`, `float`, `char`, `boolean`等
   - 引用数据类型:对象、数组等

2. **变量声明与初始化**:
   - 局部变量
   - 成员变量
   - 类变量(静态变量)

3. **运算符**:
   - 算术、关系、逻辑、位、赋值和其他运算符

4. **控制结构**:
   - 条件语句:`if`, `switch`
   - 循环结构:`for`, `while`, `do-while`

5. **数组**:
   - 声明、初始化、多维数组

6. **方法**:
   - 定义、调用、参数传递、返回值

7. **面向对象**:
   - 类和对象的基础
   - 继承、多态、封装

8. **异常处理**:
   - `try`, `catch`, `finally`, `throw`, `throws`

9. **Java API**:内置库、类和方法的使用。

### Java基本语法的难点:

1. **面向对象的概念**:尤其是多态、抽象类和接口的概念及应用
2. **泛型**:类型参数的使用和泛型方法、类的定义
3. **异常处理**:如何正确处理异常、自定义异常
4. **多线程**:同步、死锁和线程通信的概念和处理
5. **Lambda表达式**:函数式编程在Java中的实现和用途

### Java基本语法的易错点:

1. **变量的作用域和生命周期**:局部变量和成员变量的区别和使用
2. **空指针异常**:在使用对象之前没有进行初始化
3. **数组越界**:在访问数组时,使用了非法索引
4. **方法重载与重写**:混淆两者的概念和规则
5. **访问修饰符**:不正确地使用`public`, `private`, `protected`, 和默认访问修饰符
6. **类型转换**:尤其是在原始数据类型和它们的包装类之间,或在不兼容的类型之间进行转换
7. **并发问题**:在多线程环境中,没有正确地同步代码,导致数据不一致或其他并发错误

在学习Java时,要特别注意上述的难点和易错点,并通过实践和编写代码加深对这些概念的理解。

举报

相关推荐

0 条评论