2013-06-25 3 views
-1

C#에서 정적 변수를 사용하면 모든 클래스에서 액세스 할 수 있습니까? 클래스에 의해 메서드를 실행 한 후 값을 가지고있는 클래스의 변수에 액세스하려면 b 가능할 수 있습니다.다른 클래스의 다른 클래스에서 변수에 액세스

+1

그 자체가 냄새 인 lazily-initialized singleton과 같은 의심스런 냄새가납니다. –

답변

0

static은 액세스 할 수있는 관계가 없습니다. 단일 인스턴스 또는 다중를 - 그것은

static이 객체가 메모리에 거짓말을하도록되어 방법을 정의하는 등, 예를 public, private, internal를 들어, 가능하게 액세스 수정을합니다.

답변을 얻으려면 공개로 설정해야합니다. 클래스를 인스턴스화하지 않고 메소드가 다른 정적이 아닌 자원에 종속되지 않는 경우 메소드를 정적으로 만들 수 있고 클래스를 인스턴스화하지 않고 메소드를 호출 할 수 있습니다.

0

이 변수의 액세스 수정자는 무엇입니까? 이 MSDN에서 :

공용 형식 또는 멤버는 동일한 어셈블리 또는 다른 어셈블리에서 참조 할 수 있습니다.

private 형식 또는 멤버는 같은 클래스 또는 구조체의 코드로만 액세스 할 수 있습니다.

protected 형식 또는 멤버는 같은 클래스 또는 구조체의 코드 또는 해당 클래스에서 파생 된 클래스로만 액세스 할 수 있습니다.

내부 형식 또는 멤버는 동일한 어셈블리의 모든 코드에서 액세스 할 수 있지만 다른 어셈블리에서는 액세스 할 수 없습니다.

+0

조언을 주셔서 감사합니다 – TAB

+0

이것이 귀하의 질문을 해결 한 경우 답변으로 표시하십시오. – bazz

관련 문제