Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/25: Рейтинг темы: голосов - 25, средняя оценка - 4.80
0 / 0 / 0
Регистрация: 14.02.2016
Сообщений: 16

Обращение к полям базового класса

04.03.2016, 14:28. Показов 4677. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
    abstract class BaseClass
    {
        int _pole = 0;
        public virtual void UpDps()
        { }
    }
    class TestClass : BaseClass
    {
        public override void UpDps()
        {
           //Место работы с полями базового класса 
        }
    }
В общем, мне нужно в переопределенном методе класса-наследника работать с полями базового класса. Обращаясь при таком коде к полю, я получаю ошибку уровня доступа. Если поставлю уровень доступа Protected, то программа работает, но не должен ли он по умолчанию ставить данный уровень доступа?
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
04.03.2016, 14:28
Ответы с готовыми решениями:

Обращение к полю производного класса по ссылке базового класса
Описывается базовый и производный класс. В методе Main создается объект производного класса и присваивается ссылке типа базового класса....

Обращение из свойства к разным полям класса
Доброго времени суток. У меня такая проблема, есть класс треугольников в нем определены поля a,b,c длины сторон треугольника. нужно создать...

Создание экземпляра класса-наследника для переменной с типом базового класса
Подскажите чайнику как создается экземпляр класса BC BaseClass BC = new DerivedClass(); Вопрос: BC - это экземпляр класса BaseClass...

7
Эксперт .NET
 Аватар для Даценд
5878 / 4755 / 2939
Регистрация: 20.04.2015
Сообщений: 8,361
04.03.2016, 14:30
Лучший ответ Сообщение было отмечено VBL как решение

Решение

Цитата Сообщение от VBL Посмотреть сообщение
не должен ли он по умолчанию ставить данный уровень доступа?
Не должен. Ставьте protected, этот модификатор как раз для таких целей применяется.
1
0 / 0 / 0
Регистрация: 14.02.2016
Сообщений: 16
04.03.2016, 14:43  [ТС]
А если мне нужно не в методе, а в самом классе изменить поле?
C#
1
2
3
4
5
6
7
8
abstract class BaseClass
    {
        protected int _pole = 0;
    }
    class TestClass : BaseClass
    {
_pole=1;
    }
0
119 / 84 / 42
Регистрация: 14.12.2015
Сообщений: 945
04.03.2016, 14:50
Типы объявленные в классе без модификатора доступа по умолчанию являются private. Потому ты и не мог "достучаться" к полю.
0
Эксперт .NET
 Аватар для Даценд
5878 / 4755 / 2939
Регистрация: 20.04.2015
Сообщений: 8,361
04.03.2016, 15:07
Цитата Сообщение от VBL Посмотреть сообщение
А если мне нужно не в методе, а в самом классе изменить поле?
Зачем это нужно? Смысл? Да и не получится.
0
0 / 0 / 0
Регистрация: 14.02.2016
Сообщений: 16
04.03.2016, 15:15  [ТС]
Чтобы в классе-наследнике метод прибавлял какое-нибудь одно поле, а значения этих полей в разных классах разное.
0
82 / 82 / 51
Регистрация: 25.02.2016
Сообщений: 243
04.03.2016, 16:20
Если я вас правильно понял, то можно инициализировать переменную в конструкторе класса наследника.
1
0 / 0 / 0
Регистрация: 14.02.2016
Сообщений: 16
04.03.2016, 22:24  [ТС]
Точно, совсем забыл про конструктор по умолчанию.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
04.03.2016, 22:24
Помогаю со студенческими работами здесь

Как обратиться из конструктора базового абстрактного класса к свойству-массиву класса наследника
Добрый день. Подскажите как обратиться из конструктора базового абстрактного класса к свойству-массиву из класса наследника. Вроде бы...

Как сделать явное приведения переменной типа класса-наследника к типу базового класса?
Читал, что для этого нужно явное приведение к типу, но на практике выдаёт ошибку. Вот код: using System; using System.Linq; namespace...

Список дочернего класса привести к списку базового класса
Детский вопрос, но все же. есть классы: class Base { public string str = "base"; } class Dervie1 : Base ...

Использование метода из наследованного класса к объекту базового класса
Есть метод public void OpExp() { if (Person._age<18) Console.WriteLine("Вы не можете...

Класс: Создать на основе базового класса Car три класса-автомобиля: Тойота, Феррари, Бугатти.
Всем привет! На днях дали эту задачу, пытался делать по-разному не хоть убей не могу сделать. К сожалению я пропустил пары по классам. А по...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
[В процессе разработки] SDL3 для Web (WebAssembly): Сборка библиотек SDL3 и Box2D из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru