Tôi là người Java mới bắt đầu học Python. Lấy ví dụ này:Thừa kế các thuộc tính trong python bằng __init__
class Person():
def __init__(self, name, phone):
self.name = name
self.phone = phone
class Teenager(Person):
def __init__(self, name, phone, website):
self.name=name
self.phone=phone
self.website=website
Tôi chắc chắn có nhiều mã dự phòng (tôi biết trong Java, có rất nhiều dự phòng cho mã bit ở trên).
Những phần nào là thừa đối với những thuộc tính nào đã được kế thừa từ lớp cha?
Lưu ý rằng nếu bạn đang sử dụng Python 2.x, bạn phải liệt kê rõ ràng 'đối tượng' làm lớp cơ sở của' Person' để sử dụng 'super()'. Nếu không, bạn phải sử dụng biểu mẫu 'Person .__ init__'. – chepner
@chepner bạn có thể cung cấp tham chiếu cho điều đó không? Tôi không thể tìm thấy. – murgatroid99
http://docs.python.org/library/functions.html#super chỉ ra rằng super() chỉ được hỗ trợ trên các lớp kiểu mới, trong Python 2.x là các lớp kế thừa từ 'object' – chepner