Delphi self keyword

Estoy aprendiendo a Delphi leyendo el libro de Marco Cantú y está súper completo. Está muy claro pero tengo dudas sobre la palabra claveself. Ya tengo experiencia con OOP y tengo los conceptos básicos. Mi pregunta es muy simple. ¿Puedo comparar la palabra clave?yo (Delphi) a la palabra claveesta (Java)?

Cuando leí en el libro sobre elself usado dentro del registro, tengo en mi mente algo comoself : Delphi = this : Java. Mira el código que creé para hacer una prueba:

type
 TMarioKart = packed record
   Character: String;
   Kart: String;
   Tires: String;
   Speed: double;
   Competitive: boolean;
  private
   air-speed: integer;
   ground-speed: integer;
   water-speed: integer;
  public
   constructor Create(Character: string);
   function ShowStats(a: TMarioKart):string; overload;
   function ShowStats(a: TMarioKart; b: TMarioKart): string; overload;
 end;

Voy a cortar la mayor parte del código, solo estoy mostrando el constructor aquí:

constructor TMarioKart.Create(Character: string);
begin
  self.Character := Character;
end;

Usando la palabra claveself aquí me refiero al Carácter de lagrabar, y no al Carácter pasado en el método. ¿Es esta la forma correcta de usar el yo? ¿Podría ser el hermano de Javathis?

Respuestas a la pregunta(2)

Su respuesta a la pregunta