Поделиться через


Модификатор abstract

Обновлен: Ноябрь 2007

Объявляет, что класс должен быть расширен или что в производном классе необходимо предоставить реализацию свойства или метода.

abstract statement

Аргументы

  • statement
    Обязательный. Определение класса, метода или свойства.

Заметки

Модификатор abstract используется для методов или свойств класса, для которых не указана реализация, или для класса, содержащего подобные методы. Экземпляр класса, содержащего абстрактные члены, нельзя создать с помощью оператора new. Абстрактному базовому классу могут наследовать как абстрактные, так и неабстрактные классы.

Модификатором abstract можно помечать методы и свойства классов и сами классы. Если класс содержит абстрактные члены, он должен быть помечен модификатором abstract. Интерфейсы и члены интерфейсов, которые неявно являются абстрактными, не могут принимать модификатор abstract. Поля не могут быть абстрактными.

Модификатор abstract нельзя использовать одновременно с другими модификаторами наследования (final). По умолчанию, члены классов не содержат модификаторы abstract и final. Модификаторы наследования нельзя использовать одновременно с модификатором static.

Пример

В следующем примере показано использование модификатора abstract.

// CAnimal is an abstract base class.
abstract class CAnimal {
   abstract function printQualities();
}
// CDog and CKangaroo are derived classes of CAnimal.
class CDog extends CAnimal {
   function printQualities() {
      print("A dog has four legs.");
   }
}
class CKangaroo extends CAnimal {
   function printQualities() {
      print("A kangaroo has a pouch.");
   }
}

// Define animal of type CAnimal.
var animal : CAnimal;

animal = new CDog;
// animal uses printQualities from CDog.
animal.printQualities();

animal = new CKangaroo;
// animal uses printQualities from CKangaroo.
animal.printQualities();

После выполнения этой программы выводится следующий результат:

A dog has four legs.
A kangaroo has a pouch.

Требования

Версия .NET

См. также

Основные понятия

Область переменных и констант

Ссылки

Модификатор final

Модификатор static

Оператор var

Оператор function

Оператор сlass

Оператор new

Другие ресурсы

Модификаторы