Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.76/25: Рейтинг темы: голосов - 25, средняя оценка - 4.76
8 / 8 / 3
Регистрация: 28.08.2013
Сообщений: 91
1

Почему нельзя саздовать классы с модификатором private?

01.09.2013, 12:55. Показов 4438. Ответов 13
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Почему нельзя создавать классы с модификатором private?
Ошибка: "Элементы, определенные в пространстве имен, не могут объявляться в явном виде как частные, защищенные или защищенные внутренние!"
Этого в принципе нельзя сделать? Или всё таки существуют такие классы?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
01.09.2013, 12:55
Ответы с готовыми решениями:

Почему нельзя override private методы?
Собственно тема в заголовке. Я всегда считал, что нельзя так делать ввиду того, что child просто...

Пространство имен и видимость классов с модификатором private
Добрый день ! С какой целью стоит private перед классом K ? По началу думал , что этот класс...

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

Создать вложенную структуру с модификатором доступа Private
Всем доброго времени суток! Столкнулся с проблемкой следующего характера: Создаём две структуры...

13
324 / 307 / 59
Регистрация: 06.03.2013
Сообщений: 869
01.09.2013, 13:05 2
включите логику, зачем могут понадобиться нигде и никому недоступные классы?
вложенные классы могут быть приватными, вот так например:
C#
1
2
3
4
5
6
7
8
class Class1
{
    private class Test
    {
        private int a;
        private int b;
    }
}
1
8 / 8 / 3
Регистрация: 28.08.2013
Сообщений: 91
01.09.2013, 13:08  [ТС] 3
lpvoid, но при этом родительский класс Class1 может получать к нему доступ? Если да, то смысл этого класса всё таки есть.
0
324 / 307 / 59
Регистрация: 06.03.2013
Сообщений: 869
01.09.2013, 13:10 4
родительский может, остальные - нет. в чем смысл вот этого:
C#
1
2
3
4
5
6
7
namespace MyProgram
{
    private class Test
    {
         // ...
    }
}
ведь никто вообще не сможет получить доступ к такому классу. и зачем он? код загромождать?
1
8 / 8 / 3
Регистрация: 28.08.2013
Сообщений: 91
01.09.2013, 13:26  [ТС] 5
Можно было бы таким образом на этапе разработке приложения временно "комментировать" ненужные классы)
0
324 / 307 / 59
Регистрация: 06.03.2013
Сообщений: 869
01.09.2013, 13:28 6
размечтались)). я б вот хотел чтоб оно само расставляло точку с запятой ';')). увы, компиляторам мыслить не дано. иначе б уже программисты были не нужны .
0
8 / 8 / 3
Регистрация: 28.08.2013
Сообщений: 91
01.09.2013, 13:31  [ТС] 7
А мне наоборот нравится строгий синтаксис. Тогда более понятно, что и как ты пишешь.
0
324 / 307 / 59
Регистрация: 06.03.2013
Сообщений: 869
01.09.2013, 13:32 8
дак я и не прошу жидкого синтаксиса . просто такую маааленькую фичу .
0
Master of Orion
Эксперт .NET
6098 / 4954 / 905
Регистрация: 10.07.2011
Сообщений: 14,522
Записей в блоге: 5
01.09.2013, 13:32 9
lpvoid, если б он втыкал точку с запятой каждый раз, когда я пишу Method Chain для какого-нибудь Linq-Запроса, я бы его просто прибил. Через реестр.
0
324 / 307 / 59
Регистрация: 06.03.2013
Сообщений: 869
01.09.2013, 13:35 10
Цитата Сообщение от Psilon Посмотреть сообщение
lpvoid, если б он втыкал точку с запятой каждый раз, когда я пишу Method Chain для какого-нибудь Linq-Запроса, я бы его просто прибил. Через реестр.
хм, не подумал о таком варианте). а может как оно есть сейчас, так оно и правильно?))
0
Master of Orion
Эксперт .NET
6098 / 4954 / 905
Регистрация: 10.07.2011
Сообщений: 14,522
Записей в блоге: 5
01.09.2013, 13:38 11
lpvoid, может быть...
0
Администратор
Эксперт .NET
9602 / 4744 / 761
Регистрация: 17.04.2012
Сообщений: 9,592
Записей в блоге: 14
01.09.2013, 13:52 12
Цитата Сообщение от lpvoid Посмотреть сообщение
я б вот хотел чтоб оно само расставляло точку с запятой
Вам пора на VB.NET или пора привыкнуть
или
C#
1
2
3
4
5
6
7
8
9
var sb = new StringBuilder();
 
foreach (string line in File.ReadAllLines("<path>")) {
    sb.Append(line);
    if ((line.EndsWith("}") || line.EndsWith("}")) == false)
        sb.Append(";");
}
 
File.WriteAllText("<path>", sb.ToString());
Сделает это за вас
0
kolorotur
01.09.2013, 15:45
  #13

Не по теме:

Цитата Сообщение от tezaurismosis Посмотреть сообщение
C#
1
(line.EndsWith("}") || line.EndsWith("}")
Быть или быть? :)

1
Администратор
Эксперт .NET
9602 / 4744 / 761
Регистрация: 17.04.2012
Сообщений: 9,592
Записей в блоге: 14
01.09.2013, 16:43 14
kolorotur, Быть
C#
1
line.EndsWith("}") || line.EndsWith("{")
0
01.09.2013, 16:43
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
01.09.2013, 16:43
Помогаю со студенческими работами здесь

Почему классы нельзя писать в кадре?
почему классы нельзя писать в кадре?

Как обратиться к массивам в классе с модификатором доступа Private
Всем добрый день! подскажите пожалуйста, если в классе есть 2 массива с модификатором доступа...

Классы и private
Быстрый вопрос: правильно ли я понимаю, что если объявить данные класса вне области private, то я...

Классы (private, public)
Всем добра, недавно начал осваивать С# (дня два). Нужна Ваша помощь, вернее совет, по поводу...


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

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru