[Flutter] class継承の使い方

クラス継承は、あるクラスから新しいクラスを作成する際に、既存のクラスの属性やメソッドを再利用できるようにする機能です。これにより、コードの再利用性や保守性が向上し、効率的なプログラミングが可能になります。

class継承の前に、そもそもclass(クラス)って何?と思われる方はclassに関する記事を以下にまとめているので、よかったら見てみて下さい。

目次

クラス継承の基本的な書き方

クラス継承を行うには、新しいクラスを定義する際に、以下のように「親クラス名」を指定します。

class ChildClass(ParentClass):
    pass

これにより、ChildClassはParentClassの属性やメソッドを継承し、新たに追加することができます。

サンプルコードとして、以下のような親クラス「Person」を定義し、その子クラス「Employee」を定義する例を示します。

class Person:
    def __init__(self, name, age):
        self.name = name
        self.age = age
    
    def say_hello(self):
        print(f"Hello, my name is {self.name}.")

class Employee(Person):
    def __init__(self, name, age, employee_id):
        super().__init__(name, age)
        self.employee_id = employee_id
    
    def say_employee_id(self):
        print(f"My name is {self.name}.")
        print(f"I am {self.age} years old.")
        print(f"My employee ID is {self.employee_id}.")

この例では、Personクラスが「name」と「age」の属性と、「say_hello」のメソッドを持っています。そして、EmployeeクラスはPersonクラスを継承し、さらに「employee_id」と「say_employee_id」のメソッドを追加しています。こうすることで、EmployeeクラスはPersonクラスの属性とメソッドを再利用しつつ、新たな機能を実現することができます。

上記クラスを利用するためには以下の書きます。

person = Person("john",30)
person.say_hello() 

# person.say_hello()の出力結果
# -> Hello, my name is john.

emp = Employee("john",30,1344)
emp.say_employee_id()

# emp.say_employee_id()の出力結果
# -> My name is john.
# -> I am 30 years old.
# -> My employee ID is 1344.

まとめ

クラス継承は、既存のクラスを再利用しながら新しいクラスを作成することができる重要な機能です。継承を使うことで、コードの再利用性や保守性を向上させ、より効率的なプログラミングを実現することができます。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次