W
whqsoft
Unregistered / Unconfirmed
GUEST, unregistred user!
类继承的问题
我举个例子,定义一个“车”类(非结口),汽车,货车 都是“车”类的子类。
我现在有20辆车,其中10改造成汽车,10改造成货车。这样的继承关系怎样实现??
车=CLASS
public
车轮:TObject;
procedure Move;
procedure Stop;
procedure AddOil;
procedure Create;
end;
汽车=CLASS(车)
public
汽油箱:TObject
procedure TakeManyPeople;
end;
货车=Class(车)
public
货箱:TObject
procedure TakeManythings;
end;
Procedure 车.Create()
begin
车轮.Create();
end;
Procedure 汽车.Create()
begin
汽油箱.Create();
end;
Procedure 汽车.Create()
begin
货箱.Create();
end;
汽车1:=汽车(车1);
汽车1.汽油箱 (这个对象就不存在)
想了几天只想到一个办法
Create 汽车;
汽车.Assign(车);
车.Delete;
请教一下各位高手有没有什么更好的办法??
我举个例子,定义一个“车”类(非结口),汽车,货车 都是“车”类的子类。
我现在有20辆车,其中10改造成汽车,10改造成货车。这样的继承关系怎样实现??
车=CLASS
public
车轮:TObject;
procedure Move;
procedure Stop;
procedure AddOil;
procedure Create;
end;
汽车=CLASS(车)
public
汽油箱:TObject
procedure TakeManyPeople;
end;
货车=Class(车)
public
货箱:TObject
procedure TakeManythings;
end;
Procedure 车.Create()
begin
车轮.Create();
end;
Procedure 汽车.Create()
begin
汽油箱.Create();
end;
Procedure 汽车.Create()
begin
货箱.Create();
end;
汽车1:=汽车(车1);
汽车1.汽油箱 (这个对象就不存在)
想了几天只想到一个办法
Create 汽车;
汽车.Assign(车);
车.Delete;
请教一下各位高手有没有什么更好的办法??