type
 Class1 = class
 public
  property A: Integer write FA;
 end;

 Class2 = class
 public
  property B: Integer write SetB;
  property C: Integer write FC;
  constructor Create;
 end;
 
constructor Class2.Create;
begin
 // ここでプロパティA,B,Cを副作用付きで初期化する最も美しい書き方は?
 // Aの初期化をはinheritedに任せないものとする。
end;

つーかC#ではアクセサへのアクセスは禁止されてるので
いまさら議論の余地はないんだけどね。