深入浅出对象,类与面向对象编程
2023-11-06 19:00:44
红宝书笔记之第八章:对象,类与面向对象编程
面向对象,一个强大的编程范式,正在改变着我们编写代码的方式 。它使我们可以用更自然的方式来思考问题,并将其转化为代码。
面向对象的基础是对象。一个对象可以包含数据和行为。数据是对象的属性,行为是对象的函数。
类与对象
类是一个对象的蓝图。它定义了对象的属性和行为。对象是一个类的实例。它具有类所定义的属性和行为。
类的概念有点类似于数学中的集合。一个集合可以包含许多元素,而一个类可以包含许多对象。集合中的每个元素都具有相同的属性,而类中的每个对象也具有相同的属性。
构造函数
一个类的构造函数是在创建对象时被调用的函数。它用于初始化对象的属性。构造函数的名称与类的名称相同。
例如,以下代码创建了一个名为“Person”的对象:
Person person = new Person();
这段代码调用了“Person”类的构造函数。构造函数将“person”对象的属性初始化为默认值。
继承
继承是面向对象编程中的一种重要概念。它允许一个类从另一个类继承属性和行为。
例如,以下代码定义了一个名为“Student”的类,它从“Person”类继承:
class Student extends Person {
}
这段代码表示“Student”类继承了“Person”类的所有属性和行为。这意味着“Student”对象可以访问“Person”对象的属性和行为。
多态
多态是面向对象编程中的另一个重要概念。它允许一个对象以不同的方式表现自己。
例如,以下代码定义了一个名为“Animal”的类,它包含一个名为“speak”的函数:
class Animal {
public void speak() {
System.out.println("I am an animal.");
}
}
这段代码还定义了两个子类“Dog”和“Cat”,它们都从“Animal”类继承:
class Dog extends Animal {
@Override
public void speak() {
System.out.println("I am a dog.");
}
}
class Cat extends Animal {
@Override
public void speak() {
System.out.println("I am a cat.");
}
}
这段代码覆盖了“Animal”类中“speak”函数的行为。这意味着当我们调用“Dog”或“Cat”对象的“speak”函数时,它会以不同的方式表现自己。
面向对象编程是一个强大的工具,它可以帮助我们编写出更易于维护和扩展的代码。