Kế thừa Constructor

Như đã học, constructor (hàm tạo) là một hàm đặc biệt của lớp, tự động được gọi khi một đối tượng được tạo ra. Bạn không thể kế thừa constructor như những phương thức thông thường. Tuy nhiên bạn có thể tự động gọi constructor ở lớp cha thông qua từ khóa base, đã được học ở bài trước.

Để kế thừa constructor của lớp cha ta làm như ví dụ sau.

public class Animal
{
    public Animal()
    {
        Console.WriteLine("Day la constructor cua lop cha");
    }
    public Animal(string name)
    {
        Console.WriteLine("Day la constructor cua lop cha co tham so la "+name);
    }
}
public class Lion : Animal
{
    public Lion(string name)
        : base(name)
    {
        Console.WriteLine("day la constructor cua lop con ");
    }
    public Lion()
        : base()
    {

    }
}
static void Main(string[] args)
{
    Lion lion = new Lion("su tu ");
    Lion lion1 = new Lion();
    Console.ReadLine();
}

Kết quả: 

kế thừa constructor

Phân tích mã:

Bước 1: tạo lớp Animal, có 2 construcor, 1 constructor không có tham số, còn lại có 1 tham số.

Bước 2: tạo một lớp Lion, kế thừa từ lớp Animal, có 2 constructor , 1 cái có tham số, cái còn lại không. Lưu ý trong 2 constructor này đều có từ khóa : base(), tham số này sẽ quyết định sẽ gọi construcor nào của lớp cha.

Bước 3: trong hàm Main ta tạo 2 đối tượng Lion từ lớp Lion ứng với 2 construcor khác nhau.

Nhận xét: trong mã ta vừa tạo, nếu ta dùng từ khóa base ở constructor, ta sẽ gọi được constructor của lớp cha.

Dựa vào kết quả ta thấy, constructor của lớp cha sẽ được chạy trước khi constructor của lớp con.

Các môn học khác

Khoa học về dinh dưỡng, giáo trình giảm cân cho mọi người.

SQL là ngôn ngữ truy vấn mang tính cấu trúc, nó cho phép bạn truy cập và sử dụng database.

Khóa học này cung cấp cho ta kiến thức nền tảng về công nghệ Blockchain, Bitcoin. Vì sao nó được gọi là công nghệ của tương lai, vì sao giá Bitcoin lại cao đến vậy. Làm sao để mua Bitcoin, ETH.