Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import std.stdio;
- void main()
- {
- ManClass manClass = new ManClass("Adam");
- //1. Выделится память в куче нужного размера
- //2. Вызовется конструктор ManClass.this(string name)
- //2.1. Вызовется HumanClass.this(string name) потому что написано super()
- WomanClass womanClass = new ManClass("Eva");
- writeln(manClass.GetName()); //выведет Adam
- writeln(womanClass .GetName()); //выведеь Eva
- }
- //Базовый класс
- class HumanClass
- {
- //Строка name определена в базовом классе
- string name;
- this(string name)
- {
- this.name = name;
- }
- void talk()
- {
- writeln("Hello");
- }
- string GetName()
- {
- return name;
- }
- }
- class ManClass : HumanClass
- {
- //эта строка не нужна, она присутсвует в базовом HumanClass классе
- //string name;
- this(string name)
- {
- super(name); // вызывем конструктор базового класса
- }
- void job()
- {
- writeln("doing the job");
- }
- }
- class WomanClass : HumanClass
- {
- //эта строка тоже не нужна
- //string name;
- this(string name)
- {
- super(name); // вызывем конструктор базового класса
- }
- void cook()
- {
- writeln("Cooking");
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement