As always the whole project folder is ready, here.
And know the code of the two interfaces:
unit Human; {$mode objfpc}{$H+} interface uses Classes,SysUtils,Dialogs; type IHuman = Interface //Human is an INTERFACE //Interface has no visibility speciļ¬ers (public private protected). All members are public !!! //Interface has no attributes!!! //Inteface has only not implemented (virtual abstract) methods that must be redefined by the children... function GetSex():string; procedure SetSex(Sex_:string); end; implementation //An interface has NO implementation !!! end. --------------------------------------------------------------------------- unit Social; {$mode objfpc}{$H+} interface uses Classes,SysUtils,Dialogs; type ISocial = Interface //Social is an INTERFACE //Interface has no visibility modifiers (public private protected). All members are public !!! //Interface has no attributes!!! //Interface has only not implemented (virtual abstract) methods that must be redefined by the children... function GetCharacter():string; procedure SetCharacter(Character_:string); end; implementation //An interface has NO implementation !!! end.
That's all for now!
Hope this will increase your curiosity to try and modify our code, or to write a new one from scratch.
As always the key to start is fun: more serious states of mind will come as long as you'll keep on designing and coding.
See you on next article!