Çok seviyeli kalıtım
Tekli ve çoklu kalıtımı uygulayarak işe koyuldun. Bu egzersizde, Smartphone sınıfının yeni bir sürümünü oluşturarak çok seviyeli kalıtımı uygulayacaksın.
Başlamana yardımcı olmak için Computer ve Tablet sınıfları aşağıda tanımlanıp verildi. Tablet'in Computer sınıfından miras aldığını unutmamak önemli. İyi şanslar!
class Computer:
def __init__(self, brand):
self.brand = brand
def browse_internet(self):
print(f"Using {self.brand}'s default internet browser.")
class Tablet(Computer):
def __init__(self, brand, apps):
Computer.__init__(self, brand)
self.apps = apps
def uninstall_app(self, app):
if app in self.apps:
self.apps.remove(app)
Bu egzersiz
Python'da Orta Düzey Nesne Yönelimli Programlama
kursunun bir parçasıdırEgzersiz talimatları
Tablet'ten miras alan birSmartphonesınıfı tanımla, üst sınıf kurucusunu çağır vephone_numberörnek düzeyi niteliğini tanımla.Smartphone'ınphone_numbernumarasından birrecipientile bir metinmessagepaylaşan birsend_textmetodu oluştur.personal_phoneadlı birSmartphonenesnesi oluştur ve.browse_internet()metodunu çağır;Weatheruygulamasını kaldır ve Chuck'aTime for a new mission!mesajını SMS ile gönder.
Uygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
# Create a Smartphone class that inherits from Tablet
class ____(____):
def __init__(self, brand, apps, phone_number):
____.____(self, ____, ____)
self.phone_number = ____
# Create send_text to send a message to a recipient
def ____(self, message, recipient):
print(f"Sending {____} to {____} from {____.____}")
# Create an instance of Smartphone, call methods in each class
____ = Smartphone("Macrosung", ["Weather", "Camera"], "801-932-7629")
personal_phone.____()
personal_phone.____("____")
personal_phone.____("____", "Chuck")