学习目录:
- Java的注释
- Java对象和类
一. Java 注释
注释不会被运行出来,用于源代码中解释代码的作用
- 单行注释 ://
- 多行注释: /* 注释开始,*/ 注释结束
- 文档注释 :/** 注释开始, */ 注释结束
1 | int i = 36 |
二. Java 对象和类
1、类(Class):定义对象的蓝图,包括属性和方法
2、对象(Object):类的实例,具有状态和行为。
例:
1 | Car myCar = new Car() |
3、继承(Inheritance):一个类可以继承另一个类的属性和方法
1 | public class Dog extends Animal { ... } |
4、封装(Encapsulation):将对象的状态(字段)私有化,通过公共方法访问。
1 | private String name; |
私有字符串变量 name
和一个公共的 getter 方法 getName()
用来获取该变量的值
get
是 getter 方法的常见命名约定
5、方法
1 | public void displayInfo() { // 方法体 |
定义了一个公共方法 displayInfo
,该方法不接收任何参数,执行/被调用时会输出字符串 "Info"
到控制台。
6、多态(Polymorphism):对象可以表现为多种形态,主要通过方法重载和方法重写实现。
A、方法重载:指的是在同一个类中,方法名相同,但参数列表不同(可以是参数的类型、数量或顺序不同)
1 | public int add(int a, int b) { |
示例:方法重载
1 | public class Main { |
重载了 add
方法,使其可以同时处理 int
和 double
类型。
B、方法重写:是子类重新实现父类的方法,用自己的方式定义行为。
1 | // 父类 Animal |
7、抽象类:提供了类的基本框架,可以包含抽象方法(没有实现的方法)和具体方法(有实现的方法。
- 抽象类不能实例化,必须通过继承来实现其抽象方法。
- 抽象方法没有方法体,表示“类的行为在子类中定义”,子类必须提供该方法的具体实现。
1 | public abstract class Shape { |
上述代码解释:
- 这个抽象类
Shape
代表了一个“形状”,它有一个抽象方法draw()
,表示绘制形状的行为。 - 由于
draw()
是抽象方法,任何继承Shape
的类都必须实现这个方法,具体地定义如何“绘制”该形状(如绘制圆形、方形等)。
8、接口:定义了一组必须实现的方法,是一种更为严格的规范,任何类实现了接口就必须实现接口中声明的所有方法。
- 接口是一个完全抽象的类型,它只能包含抽象方法(在 Java 8 之后可以有默认方法和静态方法,但抽象方法是接口的核心)。
- 接口定义了类应当遵循的一组规则。
1 | public interface Animal { |
上述代码解释:
这个接口
Animal
定义了一个eat()
方法,表示所有实现该接口的类都应该有“吃”这个行为。接口中的方法默认是
public
和abstract
(抽象的) 的,因此我们不需要显式地使用public
或abstract
关键字来声明方法。任何实现了
Animal
接口的类(例如Dog
、Cat
)都必须实现eat()
方法。示例:
假设有一个
Dog
类实现了Animal
接口,和Circle
类继承自Shape
抽象类,代码如下:
1 | // 实现 Animal 接口的类 |