Після об’явлення класу можна створювати об’єкти. Об’єкти можна створювати лише динамічно. Методи, які призначені для створення або видалення об’єктів, називаються конструкторами і деструкторами, відповідно. Опис даних методів відрізняються від опису звичайних процедур лише тим, що у їх заголовках стоять ключові слова constructor та destructor. У якості імен конструкторів та деструкторів у базовому класі TObject і багатьох інших класах використовуються імена Create та Destroy.
Перед тим як звертатись до елементів об’єкту, його необхідно створити за допомогою конструктора. Наприклад: ObjA:=TOwnClass.Create;
Конструктор виділяє пам’ять для нового об’єкта в ”кучі” (heap), задає нульові значення для порядкових полів, значення nil – для вказівників та полів-класів, стрічкові поля встановлює порожніми, а також повертає вказівник на створений об’єкт. Деструктор знищує екземпляр класу і звільняє область пам'яті.
Наведемо приклади використання конструктора і деструктора:
type TShape=class(TGraphicControl)
private FPen: TPen; procedure PenChang(Sender:TObject);
public constructor Create(Owner:TComponent); override;
destructor Destroy; override; end;
// Опис конструктора Create класу Tshape
constructor Tshape.Create(Owner:TComponent);
begin inherited Create(Owner); w:=65; h:=65;
//Зміна успадкованих частин
FPen:=TPen.Create;
//Ініц. нових полів
FPen.OnChange:=PenChang; end;
Ключове слово inherited служить для виклику методів первинного класу.