请为我解释面向对象编程的基本概念，并且回答中必须包括一个例子和一个表格，表格中列出三个主要的面向对象编程原则。
user
面向对象编程（OOP）是一种编程范式，它通过将系统组织为相互作用的对象来模拟现实世界。在面向对象编程中，对象是类的实例，每个对象都有自己的状态（属性）和行为（方法）。

**例子：**
考虑一个简单的银行账户系统。我们可以定义一个`Account`类，它有两个属性：`account_number`和`balance`，以及两个方法：`deposit(amount)`和`withdraw(amount)`。

```python
class Account:
    def __init__(self, account_number, balance):
        self.account_number = account_number
        self.balance = balance

    def deposit(self, amount):
        self.balance += amount

    def withdraw(self, amount):
        if amount > self.balance:
            print("Insufficient funds")
        else:
            self.balance -= amount
```

**面向对象编程原则表格：**

| 原则               | 描述                                                         |
|--------------------|--------------------------------------------------------------|
| 封装（Encapsulation） | 将对象的状态和行为封装在一起，隐藏内部细节，只暴露必要的接口。 |
| 继承（Inheritance）   | 允许一个类继承另一个类的属性和方法，促进代码重用和扩展。          |
| 多态（Polymorphism）  | 同一个方法可以根据对象的不同而表现出不同的行为。                 |

以上是对面向对象编程基本概念的解释，包含了用户要求的例子和表格。
assistant