Единственное, что нужно для создания класса abstract
, - это добавить ключевое слово:
public abstract class CreditReportViewModel
{
public Person Person { get; set; }
public DateTime ReportDate { get; set; }
public string PersonalAddress { get; set; }
public string EmployerAddress { get; set; }
}
В этом случае для реализации классов не нужно добавлять какие-либо дополнительные реализации:
class Derived : CreditReportViewModel { }
Если вы также хотите сделать членов abstract
, то же самое можно сделать и здесь:
public abstract class CreditReportViewModel
{
public Person Person { get; set; }
public DateTime ReportDate { get; set; }
public string PersonalAddress { get; set; }
public string EmployerAddress { get; set; }
public abstract float MakeSomeCalculation();
}
public class Derived : CreditReportViewModel
{
public override float MakeSomeCalculation()
{
// This method must be implemented in the derived class
}
}
Типичным случаем является то, что базовый класс abstract
предоставляет некоторые члены abstract
, которые должны бытьреализуется производными классами.