2016-10-24 3 views
-1

Я следующий абстрактный класс:Получение полей от суперкласса

abstract class Customer 
{ 
    private string address { get; set; } 
    private int phone { get; set; } 

    public Customer(string address, int phone) 
    { 
     this.address = address; 
     this.phone = phone; 
    } 
} 

Тогда у меня есть следующий класс, который наследует от класса клиента:

class Private : Customer 
{ 

    private string name { get; set; } 
    private int age { get; set; } 
    private string sex { get; set; } 

    public Private(string name, int age, string sex, string address, int phone) : base(address, phone) 
    { 
     this.name = name; 
     this.age = age; 
     this.sex = sex; 
    } 

Мой вопрос: Как я могу получить доступ к телефона и адреса в моем приватном классе?

+1

сделать их достоянием общественности. – Berkay

+0

О, боже, мне так глупо. Спасибо за быстрый ответ ... – Jesper

+1

Вы можете получить к ним доступ из конструктора просто отлично. Если вы хотите получить к ним доступ из методов, они должны быть общедоступными или защищены. – Quantic

ответ

3

Используйте модификатор protected вместо private для всего, что может быть доступно унаследованными классами.

Из документов:

Защищенный член доступен в своем классе и в производных экземпляров класса.

https://msdn.microsoft.com/en-us/library/bcd5672a.aspx

+0

Спасибо. Я чувствую, что должен был подумать об этом сам. – Jesper