面向对象编程(Object-Oriented Programming, OOP)是一种编程范式,它使用“对象”来设计软件。这些对象是数据结构(称为属性或字段)和作用于这些数据的操作(称为方法或函数)的封装体。Java是一种广泛使用的面向对象编程语言,支持所有主要的OOP特性。
面向对象编程的基本概念
1.类与对象
类是对象的蓝图,定义了对象的属性和行为。对象是类的具体实例。
# Java面向对象编程基础
##类与对象
类是对象的蓝图,定义了对象的属性和行为。对象是类的具体实例。
```java
//定义一个简单的类
public class Dog {
//属性
String breed;
int age;
//方法
void bark(){
System.out.println("汪!”);
}
}
//创建对象
public static void main(String[] args){
Dog myDog = new Dog();
myDog.breed = “拉布拉多";
myDog.age = 3;
myDog.bark():汪!
}
}
2.继承
继承允许我们创建一个新类,该类可以从现有类那里获取属性和方法。
//基类
public class Animal {
void eat(){
System.out.println("吃东西”);
}
}
//派生类
public class Dog extends Animal {
void bark(){
System.out.println("汪!");
}
}
//测试
public static void main(String[] args){
Dog myDog = new Dog();
myDog.eat():吃东西
myDog.bark():汪!
}
3.封装
封装是隐藏对象内部状态的过程,通常通过将变量设置为私有(private),并通过公共(public)的方法来访问这些变量。
Java
public class Animal {
void makeSound(){
System.out.println("发出声音”);
}
}
public class Cat extends Animal {
@Override
void makeSound(){
System.out.println("喵喵叫”);
}
}
public class Dog extends Animal {
@Override
void makeSound() {
System.out.println("汪汪叫”);
}
}
public static void main(String[] args){
Animal myCat = new Cat();
Animal myDog = new Dog();
myCat.makeSound():喵喵叫
myDog.makeSound():汪汪叫
}
4.多态
多态性意味着一个接口可以表示多种类型的行为。
public class Animal {
void makeSound(){
System.out.println("发出声音”);
}
}
public class Cat extends Animal {
@Override
void makeSound(){
System.out.println("喵喵叫”);
}
}
public class Dog extends Animal {
@Override
void makeSound(){
System.out.println("汪汪叫”);
}
}
public static void main(String[] args){
Animal myCat = new Cat();
Animal myDog = new Dog();
myCat.makeSound():喵喵叫
myDog.makeSound():汪汪叫
}