class 관련 질문
205
작성한 질문수 86
우리가 cs파일을 생성하고 cs 파일 이름을 Program으로 하면
namespace CSharp
{
// ==================== 1번 위치 ================
class Progream
{
// ============ 2번 위치 ===============
static void Main(string[] args)
{
}
}
}
이런식으로 기본적인 코드가 발생합니다.
여기서 궁금한점이 있습니다.
1번지역에 class를 선언하는 것과 2번지역에 class를 선언하는 것에 무슨 차이가 있는건가요???
namespace CSharp
{
// ==================== 1번 위치 ================
class A
{
}
class Progream
{
// ============ 2번 위치 ===============
class B
{
}
static void Main(string[] args)
{
A a = new A();
B b = new B();
}
}
}
위 코드의 A처럼 바깥에 class를 선언해도 Main 안에 객체를 찍는 것에는 문제가 없어보입니다.
어떤 점에서 차이가 있고 언제 1번지역에서 class를 선언하고 2번지역세어 class를 선언해야 하는지 궁금합니다.
답변 1
2
https://www.geeksforgeeks.org/nested-classes-in-c-sharp/
위 내용 확인 바랍니다.
class 내부에서 또 class를 선언하는걸 중첩 클래스(nested class)라 하고
참고로 C++에서 동일한 개념이 존재합니다.
테스트하실 때 Program 내부에 중첩 클래스를 만들고,
역시 Program 내부에 있는 static main에서 테스트를 했으니
별다른 차이가 없었지만,
그게 아니라 전혀 다른 클래스에서 중첩 클래스를 사용할 경우
OuterClass.InnerClass 형태로 사용해야 합니다.
첫번 째 단계 코드 질문
0
51
1
안녕하세요 Rookiss님 기본기를 다지고 있는 대학생입니다.
0
164
2
Generic에 대한 질문 있습니다.
0
185
2
2022 버전에 커뮤니티 버전이 없는데 2026 버전으로 해도 무관?
0
301
2
다형성 캐시 문제
0
205
3
.
0
112
1
프로퍼티 강의 질문 있습니다.
0
127
1
이후 커리 질문
0
137
1
static
0
173
2
강의에는 새로운 클래스 파일을 생성하면...
0
132
1
생성자의 이름 선언
0
116
1
9:03 Divide(10 , 3) 부분 질문입니다
0
127
1
깃허브 관련 질문 있습니다.
0
289
1
비쥬얼 스튜디오 업데이트가 된건가요..? 매개변수 오류 관련 질문
0
307
1
C# 시리즈 || C++ 시리즈 자료구조 강의에 대한 질문입니다!
0
356
2
Activator 질문있습니다
0
388
1
이넘 타임 선언 질문
0
406
1
Sort 오름차순, 내림차순
0
373
1
질문 있습니다.
0
292
1
팩토리얼 문제
0
322
1
Sort함수 질문있습니다.
0
317
1
다형성 함수 질문 있습니다.
0
276
1
질문이 있습니다.
0
272
1
섹션2 연습문제 질문입니다.
0
277
1





