Я создал класс, который имеет некоторые функции, определенные как защищенные.Я пытаюсь реализовать множественное наследование. Как я могу это сделать
Теперь класс B наследует A и класс C наследует B. Класс A имеет частный конструктор по умолчанию и защищенный параметризованный конструктор.
Я хочу, чтобы класс B, чтобы иметь возможность получить доступ ко всем защищенным функциям, определенным в классе А, но класс C может иметь доступ на некоторые из функций, только не все функции и класс C наследует класс B.
Как могу ли я ограничить доступ к некоторым функциям класса A из класса C?
EDIT:
namespace Db
{
public class A
{
private A(){}
protected A(string con){assign this value}
protected DataTable getTable(){return Table;}
protected Sqlparameters setParameters(){return parameter;}
}
}
namespace Data
{
public class B:A
{
protected B():base("constring"){}
protected DataTable output(){return getTable();}
protected sqlparameter values(param IDataParameter[] parameter){}
}
}
namespace Bsns
{
public class C:B
{
protected C():base(){}
protected DataTable show()
{return values(setparameter());}
}
}
EDIT
Я думаю, что я пытаюсь сделать здесь множественное наследование.
Пожалуйста, проверьте.
class A
{
//suppose 10 functions are declared
}
class B:A
{
//5 functions declared which are using A's function in internal body
}
class C:B
{
//using all functions of B but require only 4 functions of A to be accessible by C.
}
Зачем вы хотите это сделать? Если класс C будет находиться в другой сборке от A и B, вы можете использовать защищенный внутренний. – 2010-05-17 05:08:16
@Moron: Нет, все классы находятся в одной сборке. Любое другое решение, я могу разделить класс A на большее число классов, но не могу сделать это для B или C –
@Moron: Что делать, если у меня есть все 3 класса в разных сборках, и я хочу, чтобы класс B получал доступ ко всем функциям, но класс C для доступа ограниченные функции. –