unit Unit2;
interface
uses Dialogs;
type
TPerson=Class(Tobject)
private
aname:string;
asex:string;
aage:integer;
function getName():string;
function getsex():string;
function getAge():integer;
procedure setName(value:string);
procedure setsex(value:string);
procedure setAge(value:integer);
public
Property Name:string read getName write setName;
Property sex:string read getsex write setsex;
Property Age:integer read getAge write setAge;
constructor Create(aname:string);
procedure DoWork(); virtual; abstract;
end;
Tteacher=Class(TPerson)
public
constructor Create(aname:string);
procedure DoWork();override;
end;
implementation
{ Tteacher }
{ TPerson }
constructor TPerson.Create(aname: string);
begin
Name:=aname;
end;
function TPerson.getAge: integer;
begin
result:= aAge;
end;
function TPerson.getName: string;
begin
result:= aname;
end;
function TPerson.getsex: string;
begin
result:= aSex;
end;
procedure TPerson.setAge(value: integer);
begin
Age:=value;
end;
procedure TPerson.setName(value: string);
begin
aname:=value;
end;
procedure TPerson.setsex(value: string);
begin
Sex:=value;
end;
{ Tteacher }
constructor Tteacher.Create(aname: string);
begin
inherited;
end;
procedure Tteacher.DoWork;
begin
inherited;
showmessage('I am '+aname+' ::::I am Teaching Now!');
end;
end.