Gaurangraval Ответов: 8

модификаторы доступа в c#


что такое модификаторы доступа в c# .net?

public :
private :
protected :
internal :
protected internal :


где я могу все это использовать?
в чем разница между ними?
Приведите мне для этого живой пример.

я более свеж, поэтому отвечаю простым языком.

Гауранг Раваль.
Свежее (стажер)

8 Ответов

Рейтинг:
68

Prasad_Kulkarni

Модификатор доступа это неотъемлемая часть объектно-ориентированного программирования.

Они поддерживают концепцию encapsulation, который продвигает идею функциональность скрывается .

Модификатор доступа позвольте вам определить, кто имеет или не имеет доступ к определенным особенностям.

  • общественный
    -Никаких ограничений на доступ
    - Доступ к типу или члену может быть получен любым другим кодом в той же сборке или другой сборке, которая ссылается на него.
  • защищенный
    - Доступ ограничен в пределах определения класса и любого класса, который наследуется от класса.
    - К типу или члену можно получить доступ только с помощью кода в том же классе или структуре или в классе, производном от этого класса.
  • внутренний
    - Доступ ограничен исключительно классами, определенными в текущей сборке проекта.
    - К типу или члену можно получить доступ только с помощью кода в том же классе или структуре.
  • частный
    - Доступ ограничен в пределах определения класса; это тип модификатора доступа по умолчанию, если формально он не указан.
    - Тип или элемент могут быть доступны любому коду в той же сборке, но не из другой сборки.


Ссылаться:
модификатор доступа[^]


Abhinav S

5!

Prasad_Kulkarni

Спасибо тебе, Абхинав!

Manas Bhardwaj

+5!

Prasad_Kulkarni

Спасибо тебе, Манас!

Рейтинг:
41

Vivek.netprofessional

Это может помочь вам в полной мере
http://www.dotnetbull.com/2013/10/public-protected-private-internal-access-modifier-in-c.html [^]

Доступность доступа изменяется в c#


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


Внутренняя Сборка


Наружная Сборка


с наследованием


с типом


с наследованием


с типом


Общественный


у


у


у


у


Частный


Икс


Икс


Икс


Икс


Защищенный


у


Икс


у


Икс


Внутренний


у


у


Икс


Икс


Защищенный Внутренний


у


у


у


Икс



Ссылка :-
dotnetbull - что такое модификатор доступа в c#


Рейтинг:
29

OriginalGriff

Две большие public и private и все, что они делают, это говорят, сколько из вас класса может быть замечено внешним миром.
Все, что вы объявите как private доступ к нему возможен только внутри самого класса:

public class MyClass
   {
   private void myFunction(){}
   ...
   myFunction();   // LEGAL, no problem
   ...
   }
...
   MyClass mc = new MyClass();
   mc.MyFunction();   // ILLEGAL - no access

Все, что вы объявите как public можно получить доступ к любому коду в любом месте.

Остальные падают в середине этих двух:
protected это означает, что он доступен только внутри класса и в любом классе, производном от класса. Это private но с особым доступом к производным классам.

internal означает public классам внутри одной и той же сборки, а также private к классам вне сборки. Таким образом, если вы создаете свою собственную библиотеку DLL, все ваши классы в стороне библиотеки DLL могут получить доступ к объектам, но классы, которые ссылаются на вашу библиотеку DLL, не могут их видеть.

protected internal представляет собой комбинацию protected и internal - они видны внутри сборки точно так же, как internal объекты, но они также видны производным классам снаружи, так же как и protected


Manas Bhardwaj

Хорошо +5!

Gaurangraval

Огромное спасибо!......:-)

Shemeer NS

5 ЕД

Рейтинг:
26

Manas Bhardwaj

Гугл сломался у вас дома. Быть новичком не означает, что вы заполняете список вопросов в CP и ждете готового ответа. Вы сами должны искать эти ответы.

Это может быть хорошим началом для вас:

Модификаторы Доступа (Ссылка На C# )[^]


Prasad_Kulkarni

+5!

Gaurangraval

сэр,я видел это, но не могу понять, поэтому я задал этот вопрос. пожалуйста, приведите живой пример и дайте ответ на нормальном языке.

публичный: доступ не ограничен.

защищенный: доступ ограничен содержащим классом или типами, производными от содержащего класса.

Внутренний: доступ ограничен текущей сборкой.

защищенный внутренний: доступ ограничен текущей сборкой или типами, производными от содержащего класса.

Частный: доступ ограничен содержащим типом.

Philippe Mori

Вам просто нужно нажать на каждое слово, например public на этой странице, чтобы получить пример для этого ключевого слова. Совсем не сложно и гораздо быстрее, чем отправить вопрос.

Рейтинг:
2

Member 10237843

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

Внутренний доступен в любом месте содержащей сборки.Это ошибка времени компиляции для доступа к внутреннему члену извне содержащей сборки
Защищенный Внутренний может быть доступен любым кодом в сборке, в которой он объявлен, или из производного класса в другой сборке.Это комбинация модификатора внутреннего и защищенного доступа.
Собрание в .NET генерируется при компиляции проекта.Сборка бывает 2-х типов-исполняемая и.dll. Консоль, приложения windows генерируют сборку. exe, в то время как библиотека и asp.net генерировать .сборка dll.
Сборка-это промежуточный код языка.


CHill60

Ничего не добавляет к более ранним ответам и не строго точен - вы можете привлечь downvotes, отвечая на старые, ранее адекватно отвеченные вопросы

Рейтинг:
1

Abhinav S

Я думаю, что лучше всего для вас взять хорошую книгу, а затем прочитать о модификаторах.
Они будут подробно описаны в первых главах.


Gaurangraval

можете ли вы предложить мне название любой электронной книги для .net C#

Prasad_Kulkarni

Хорошее предложение +5!

Рейтинг:
1

Sachin Gargava

публичный член:публичный член может быть доступен в любом месте проекта, а также в другом проекте.

частный член :частный член может быть доступен в любом месте внутри самого класса, а не вне этого класса.

Внутренний член: внутренний член может быть доступен в любом месте проекта.

защищенный член :защищенный член может быть доступен в классе, где член объявляется так же, как и derrived класс.

защищенный внутренний: защищенный внутренний член наслаждается двойным effect.it доступен в любом месте prject, а также если этот класс наследует один другой класс и находится в другом проекте, то только он может быть доступен и для другого проекта.