5. class имя класса: список_базовых_классов
{список_компонентов_класса};
6. Поскольку конструкторы не наследуются, при создании производного класса наследуемые им данные-члены должны инициализироваться конструктором базового класса. Конструктор базового класса вызывается автоматически и выполняется до конструктора производного класса. Если наследуется несколько базовых классов, то их конструкторы выполняются в той последовательности, в которой перечислены базовые классы в определении производного класса. Конструктор производного класса вызывается по окончании работы конструкторов базовых классов. Параметры конструктора базового класса указываются в определении конструктора производного класса. Таким образом происходит передача аргументов от конструктора производного класса конструктору базового класса.
public class A
{
public virtual void DoWork ()
{
Console.WriteLine("class A");
}
}
public class B: A
{
public override void DoWork ()
{
Console.WriteLine("class B");
}
}
Здесь есть 2 класса: A — предок, B — потомок. В классе A объявлен метод
public virtual void DoWork ()
ключевое слово virtual говорит о том, что этот метод может быть переопределен в потомке
begin
if a>b then
result:=a
else
result:=b;
end;
function min4(var a,b,c,d:integer): integer;
begin
if min2(a,b)>min2(c,d) then
result:=min2(a,b)
else
result:=min2(c,d);
end;
var a,b,c,d: integer;
begin
readln(a,b,c,d);
writeln(min4(a,b,c,d));
end.