Java 面向对象编程(OOP)的四大特征
- 1、抽象
- 2、继承
- 3、 封装
- 4、多态性
💖The Begin💖点点关注,收藏不迷路💖
|
在Java编程中,面向对象编程(OOP)是一个核心概念。OOP的四大基本特征分别是:抽象、继承、封装和多态。本文将详细介绍这四个特征。
1、抽象
抽象是指将一类对象的共同特征总结出来构造类的过程。抽象包括数据抽象和行为抽象两方面。它只关注对象有哪些属性和行为,并不关注这些行为的具体实现细节。
示例:
abstract class Animal {
String name;
abstract void makeSound();
}
在这个例子中,Animal类是一个抽象类,它定义了一个抽象方法 makeSound(),但并没有给出具体实现。
2、继承
继承是从已有类得到继承信息创建新类的过程。提供继承信息的类被称为父类(超类、基类),得到继承信息的类被称为子类(派生类)。通过继承,子类可以重用父类的代码,同时也可以增加新的属性和方法。
示例:
class Dog extends Animal {
void makeSound() {
System.out.println("Bark");
}
}
在这个例子中,Dog类继承自 Animal 类,并且实现了 makeSound() 方法。
3、 封装
封装是指将数据和操作数据的方法绑定在一起,对数据的访问只能通过已定义的接口。通过封装,可以隐藏对象的内部实现细节,只向外界提供必要的接口。
示例:
class Person {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
在这个例子中,Person类的 name 属性是私有的,只能通过 getName() 和 setName() 方法进行访问。
4、多态性
多态性允许不同子类型的对象对同一消息作出不同的响应。即使用相同的对象引用调用相同的方法,但表现出不同的行为。多态性分为编译时的多态性和运行时的多态性。方法重载(overload)实现的是编译时的多态性,而方法重写(override)实现的是运行时的多态性。
示例:
class Cat extends Animal {
void makeSound() {
System.out.println("Meow");
}
}
public class Main {
public static void main(String[] args) {
Animal myDog = new Dog();
Animal myCat = new Cat();
myDog.makeSound(); // 输出 "Bark"
myCat.makeSound(); // 输出 "Meow"
}
}
在这个例子中,Dog和Cat类都继承自Animal类,并且重写了makeSound()方法。当用父类型引用调用 makeSound() 方法时,会根据实际对象类型表现出不同的行为。
💖The End💖点点关注,收藏不迷路💖
|