ВУЗ:
Составители:
Рубрика:
мической  памяти  и  делают  действительным  содержащийся  в  объекте 
указатель: 
var 
MyObject: TMyClass; 
begin 
MyObject.IntField := 0;  
// { Ошибка! Объект не создан конструктором!}  
MyObject := TMyClass.Create;  
// Надо так: создаем объект  
MyObject.IntField := 0; 
// и обращаемся к его полю 
MyObect.Free;  
// Уничтожаем ненужный объект 
end; 
В базовом классе TObject определен метод Free, который сначала 
проверяет действительность адреса объекта и лишь затем вызывает де-
структор Destroy. Обращение к деструктору объекта будет ошибочным, 
если  объект  не  создан  конструктором,  поэтому  для  уничтожения  не-
нужного объекта следует вызывать метод Free. 
Некоторые  методы  могут  вызываться  без  создания  и  инициации 
объекта. Такие методы называются методами класса, они объявляются с 
помощью зарезервированного слова class: 
type 
TMyClass = class(TObject) 
class Function GetClassName: String; 
end; 
var 
S: String; 
begin 
S := TMyClass.GetClassName; 
end;  
Методы класса не должны обращаться к полям, т. к. в общем слу-
чае вызываются без создания объекта, а следовательно, в момент вызова 
полей  просто  не  существует.  Обычно  они  возвращают  служебную  ин-
формацию о классе  − имя  класса, имя  его родительского  класса, адрес 
метода и т. п. 
Свойства – это  специальный  механизм  классов,  регулирующий 
доступ к  полям.  Свойства объявляются с помощью  зарезервированных 
слов property, read и write (слова read и write считаются зарезервирован-
70
Страницы
- « первая
- ‹ предыдущая
- …
- 68
- 69
- 70
- 71
- 72
- …
- следующая ›
- последняя »
