powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Подскажите, как из родительского класса получить доступ к полям дочернего класса
13 сообщений из 13, страница 1 из 1
Подскажите, как из родительского класса получить доступ к полям дочернего класса
    #39568783
Mixon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
День добрый!
Возможно ли из класса А получить доступ к полям класса B вот в таком случае:
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
public class A
{
public void _Save()
{
// как тут получить доступ к полю класса B.z???
}
}

public class B:A
{
public int z=123;

public void Save()
{
this._Save();
}
}



Задача написать класс для сохранения дочерних классов в базу\файл и тд и тп,
нагромождать функционал в каждый дочерний класс не хотелось бы, сложнее сопровождать.
Заранее спасибо.
...
Рейтинг: 0 / 0
Подскажите, как из родительского класса получить доступ к полям дочернего класса
    #39568829
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mixon,
делают полиморфизм.
Т.е. в верхний класс в Save передают параметром стрим-поток для сохранения и сначала пишет верхний класс B, потом класс А и т.д. до последней матрёшки.
...
Рейтинг: 0 / 0
Подскажите, как из родительского класса получить доступ к полям дочернего класса
    #39568830
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mixon,
каждй класс пишет свои поля
...
Рейтинг: 0 / 0
Подскажите, как из родительского класса получить доступ к полям дочернего класса
    #39568855
Фотография buser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mixon, это называется сериализация (Serialization). Гуглить до посинения по этим словам....
Хотя... может я не понял вас... тогда есть this.GetType и другие Reflection 'ы позволяющие вам раздербанить тип :)
P.S.: я бо не стал делать такого рода штуки в базовом классе...
...
Рейтинг: 0 / 0
Подскажите, как из родительского класса получить доступ к полям дочернего класса
    #39568863
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
читайте про ключевые слова
abstract

virtual
и модификаторы доступа

protected
...
Рейтинг: 0 / 0
Подскажите, как из родительского класса получить доступ к полям дочернего класса
    #39568970
13th
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Mixon,
Код: c#
1.
2.
3.
using System.Reflection;

List<FieldInfo> Fields = item.GetType().GetFields().ToList();
...
Рейтинг: 0 / 0
Подскажите, как из родительского класса получить доступ к полям дочернего класса
    #39568976
Фотография ЕвгенийВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MixonДень добрый!
Возможно ли из класса А получить доступ к полям класса B вот в таком случае:
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
public class A
{
public void _Save()
{
// как тут получить доступ к полю класса B.z???
}
}

public class B:A
{
public int z=123;

public void Save()
{
this._Save();
}
}



Задача написать класс для сохранения дочерних классов в базу\файл и тд и тп,
нагромождать функционал в каждый дочерний класс не хотелось бы, сложнее сопровождать.
Заранее спасибо.
А если я сделаю class олпдрполдпр:B{}, как твой A может получить доступ его полям?
...
Рейтинг: 0 / 0
Подскажите, как из родительского класса получить доступ к полям дочернего класса
    #39569098
Addx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MixonДень добрый!
Возможно ли из класса А получить доступ к полям класса B вот в таком случае:
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
public class A
{
public void _Save()
{
// как тут получить доступ к полю класса B.z???
}
}

public class B:A
{
public int z=123;

public void Save()
{
this._Save();
}
}



Задача написать класс для сохранения дочерних классов в базу\файл и тд и тп,
нагромождать функционал в каждый дочерний класс не хотелось бы, сложнее сопровождать.
Заранее спасибо.

1. С точки зрения ООП - никак. Есть рефлекшн и иже с ними, но это другое дело.
2. Ну, допустим, сохранили, и что дальше? Что с этим потом делать?

Есть атрибут Serializable, чем он Вам не угодил?
...
Рейтинг: 0 / 0
Подскажите, как из родительского класса получить доступ к полям дочернего класса
    #39569129
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Addx,

+1
...
Рейтинг: 0 / 0
Подскажите, как из родительского класса получить доступ к полям дочернего класса
    #39569567
MixonДень добрый!
Возможно ли из класса А получить доступ к полям класса B вот в таком случае:
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
public class A
{
public void _Save()
{
// как тут получить доступ к полю класса B.z???
}
}

public class B:A
{
public int z=123;

public void Save()
{
this._Save();
}
}



Задача написать класс для сохранения дочерних классов в базу\файл и тд и тп,
нагромождать функционал в каждый дочерний класс не хотелось бы, сложнее сопровождать.
Заранее спасибо.

А почему именно такая постановка задачи? Что за надобность получать доступ в родительском класс - не проще ли, чтобы каждый дочерний класс сохранял себя сам?
...
Рейтинг: 0 / 0
Подскажите, как из родительского класса получить доступ к полям дочернего класса
    #39569589
Mixon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Новопашин Владимир,

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

ЗЫ я побывал внедрять функционал в каждый класс, это приводит к излишнему коду.
...
Рейтинг: 0 / 0
Подскажите, как из родительского класса получить доступ к полям дочернего класса
    #39569590
Mixon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
MixonНовопашин Владимир,

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

ЗЫ я побывал внедрять функционал в каждый класс, это приводит к излишнему коду.

Вопрос решил как было сказано выше, всем спасибо.
...
Рейтинг: 0 / 0
Подскажите, как из родительского класса получить доступ к полям дочернего класса
    #39570631
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Забит очередной костыль
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Подскажите, как из родительского класса получить доступ к полям дочернего класса
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]