I would like to inherit records, since this is not possible, is the best solution to create classes with public fields and use their inheritance?
Yes, it uses classes. There is a full discussion on the question . Why are Delphi records not inherited?