Thanks @ChrisF and @Thaddy
Actually my background is not from delphi so i am not much aware of usage of objects, as a brief survey yield me below result from wiki.
Object TypesThe Delphi compiler allows an alternative syntax to class types. You can declare object types using the syntax:
type
objectTypeName = object (ancestorObjectType)
memberList
end;
where objectTypeName is any valid identifier, (ancestorObjectType) is optional, and memberList declares fields, methods, and properties. If (ancestorObjectType) is omitted, then the new type has no ancestor. Object types cannot have published members.
Since object types do not descend from System.TObject, they provide no built-in constructors, destructors, or other methods. You can create instances of an object type using the New procedure and destroy them with the Dispose procedure, or you can simply declare variables of an object type, just as you would with records.
Object types are supported for backward compatibility only. Their use is not recommended.
http://docwiki.embarcadero.com/RADStudio/Seattle/en/Classes_and_Objects
As we all know that FPC is very near to Delphi 2010 now. Is it safe to use Object instead of Class. Because as mentioned by delphi wiki, object types are supported for backward compatibiltiy only, and is not recommended.