#案例:银行账户类,加密初始化账号、余额,定义公共方法查看两个属性,定义存款取款方法 Python
时间: 2024-11-15 13:27:19 浏览: 39
详解C++基础——类继承中方法重载
在Python中,我们可以创建一个名为`BankAccount`的类来模拟银行账户的行为。这个类可以包含私有变量来存储账号(encrypted_account)和余额(balance),并通过装饰器或特殊方法(如`__init__`, `__str__`, `deposit`, `withdraw`)来进行相应的操作。以下是该类的一个简单示例:
```python
import hashlib
class BankAccount:
def __init__(self, account_num, initial_balance):
self._encrypted_account = self.encrypt_account(account_num)
self.balance = initial_balance
@staticmethod
def encrypt_account(account_num):
return hashlib.sha256(account_num.encode()).hexdigest()
def view_details(self):
print(f"Encrypted Account: {self._encrypted_account}")
print(f"Balance: {self.balance}")
def deposit(self, amount):
if amount > 0:
self.balance += amount
print(f"Deposited: {amount}. New Balance: {self.balance}")
else:
print("Invalid deposit amount.")
def withdraw(self, amount):
if amount <= self.balance:
self.balance -= amount
print(f"Withdrew: {amount}. New Balance: {self.balance}")
else:
print("Insufficient balance.")
# 使用示例
account = BankAccount("123456", 1000)
account.view_details()
account.deposit(500)
account.withdraw(200)
```
在这个例子中,`__init__`方法用于初始化账户,`encrypt_account`是一个静态方法用于对账户号码加密,`view_details`方法显示账户详细信息,而`deposit`和`withdraw`方法分别用于存款和取款操作。
阅读全文