0%

EP18-菜鸟教程-Java教程-学习笔记

此文档仅基于个人经验和感受出发,为菜鸟驿站-java教程的学习笔记。

课程参考链接:https://www.runoob.com/java/java-tutorial.html

一、Java基础语法&Java注释

1、Java修饰符

像其他语言一样,Java可以使用修饰符来修饰类中方法和属性。主要有两类修饰符:

  • 访问控制修饰符 : default, public , protected, private
  • 非访问控制修饰符 : final, abstract, static, synchronized

2、继承

在 Java 中,一个类可以由其他类派生。如果你要创建一个类,而且已经存在一个类具有你所需要的属性或方法,那么你可以将新创建的类继承该类。

利用继承的方法,可以重用已存在类的方法和属性,而不用重写这些代码。被继承的类称为超类(super class),派生类称为子类(sub class)。

3、接口

在 Java 中,接口可理解为对象间相互通信的协议。接口在继承中扮演着很重要的角色。

接口只定义派生要用到的方法,但是方法的具体实现完全取决于派生类。

4、Java 源程序与编译型运行区别

如下图所示:

5、文档注释

文档注释以 /** 开始,以 ***/** 结束,通常出现在类、方法、字段等的声明前面,用于生成代码文档,这种注释可以被工具提取并生成 API 文档,如 JavaDoc。

1
2
3
4
5
6
7
/**
* 这是一个文档注释示例
* 它通常包含有关类、方法或字段的详细信息
*/
public class MyClass {
// 类的成员和方法
}

文档注释的格式通常包含一些特定的标签,如 @param 用于描述方法参数,**@return** 用于描述返回值,**@throws** 用于描述可能抛出的异常等等,这些标签有助于生成清晰的API文档,以便其他开发者能够更好地理解和使用你的代码。

二、Java对象和类

4、封装(Encapsulation)

  • 将对象的状态(字段)私有化,通过公共方法访问。

  • 示例:

    1
    2
    private String name; 
    public String getName() { return name; }

5、多态(Polymorphism)

  • 对象可以表现为多种形态,主要通过方法重载和方法重写实现。

  • 示例:

    1
    2
    3
    - 方法重载:`public int add(int a, int b) { ... }` 和 `public double add(double a, double b) { ... }`

    - 方法重写:`@Override public void makeSound() { System.out.println("Meow"); }`

6、抽象(Abstraction)

  • 使用抽象类和接口来定义必须实现的方法,不提供具体实现。

  • 示例:

    1
    2
    3
    - 抽象类:`public abstract class Shape { abstract void draw(); }`

    - 接口:`public interface Animal { void eat(); }`

9、方法重载(Method Overloading)

  • 同一个类中可以有多个同名的方法,但参数不同。

  • 示例:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    public class MathUtils {
    public int add(int a, int b) {
    return a + b;
    }

    public double add(double a, double b) {
    return a + b;
    }
    }

对象和类的概念。

  • 对象:对象是类的一个实例,有状态和行为。例如,一条狗是一个对象,它的状态有:颜色、名字、品种;行为有:摇尾巴、叫、吃等。
  • :类是一个模板,它描述一类对象的行为和状态。

Java 中的类

类可以看成是创建 Java 对象的模板。

一个类可以包含以下类型变量:

  • 局部变量:在方法、构造方法或者语句块中定义的变量被称为局部变量。变量声明和初始化都是在方法中,方法结束后,变量就会自动销毁。
  • 成员变量:成员变量是定义在类中,方法体之外的变量。这种变量在创建对象的时候实例化。成员变量可以被类中方法、构造方法和特定类的语句块访问。
  • 类变量:类变量也声明在类中,方法体之外,但必须声明为 static 类型。

构造方法

每个类都有构造方法。如果没有显式地为类定义构造方法,Java 编译器将会为该类提供一个默认构造方法

在创建一个对象的时候,至少要调用一个构造方法。构造方法的名称必须与类同名,一个类可以有多个构造方法。

下面是一个构造方法示例:

1
2
3
4
5
6
7
8
public class Puppy{
public Puppy(){
}

public Puppy(String name){
// 这个构造器仅有一个参数:name
}
}

创建对象

对象是根据类创建的。在Java中,使用关键字 new 来创建一个新的对象。创建对象需要以下三步:

  • 声明:声明一个对象,包括对象名称和对象类型。
  • 实例化:使用关键字 new 来创建一个对象。
  • 初始化:使用 new 创建对象时,会调用构造方法初始化对象。

下面是一个创建对象的例子:

1
2
3
4
5
6
7
8
9
10
public class Puppy{
public Puppy(String name){
//这个构造器仅有一个参数:name
System.out.println("小狗的名字是 : " + name );
}
public static void main(String[] args){
// 下面的语句将创建一个Puppy对象
Puppy myPuppy = new Puppy( "tommy" );
}
}

三、DO、BO、DTO、VO、AO、PO、UID等术语解释

在Java开发中,DO、BO、DTO、VO、AO、PO、UID等术语通常用于表示不同的对象类型或概念。以下是它们的常见含义:

  1. DO (Data Object / Domain Object):
    • 数据对象领域对象,通常与数据库表直接对应,用于表示持久化数据。
    • 例如,一个UserDO可能对应数据库中的user表。
  2. BO (Business Object):
    • 业务对象,封装了业务逻辑和操作,通常由多个DO或其他BO组合而成。
    • 例如,一个OrderBO可能包含订单信息、用户信息和商品信息。
  3. DTO (Data Transfer Object):
    • 数据传输对象,用于在不同层(如服务层和表现层)之间传输数据。
    • 例如,UserDTO可能包含用户的基本信息,用于前端展示。
  4. VO (Value Object):
    • 值对象,通常用于表示一个不可变的对象,包含一些属性但没有行为。
    • 例如,AddressVO可能包含地址的详细信息。
  5. AO (Application Object):
    • 应用对象,用于表示应用程序中的某个实体或概念,通常包含业务逻辑。
    • 例如,ReportAO可能表示一个报表对象,包含生成报表的逻辑。
  6. PO (Persistent Object):
    • 持久化对象,与DO类似,通常用于表示与数据库表直接对应的对象。
    • 例如,UserPO可能对应数据库中的user表。
  7. UID (Unique Identifier):
    • 唯一标识符,用于唯一标识某个对象或实体。
    • 例如,userId可能是一个用户的唯一标识符。

这些术语的具体使用可能因项目或团队的不同而有所差异,但它们的核心概念通常是相似的。

--------------------------------------- The End ---------------------------------------