class 관련 질문
194
작성한 질문수 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 형태로 사용해야 합니다.
Generic에 대한 질문 있습니다.
0
96
2
2022 버전에 커뮤니티 버전이 없는데 2026 버전으로 해도 무관?
0
201
2
다형성 캐시 문제
0
113
3
.
0
71
1
프로퍼티 강의 질문 있습니다.
0
78
1
이후 커리 질문
0
86
1
static
0
91
2
강의에는 새로운 클래스 파일을 생성하면...
0
72
1
생성자의 이름 선언
0
65
1
9:03 Divide(10 , 3) 부분 질문입니다
0
88
1
깃허브 관련 질문 있습니다.
0
239
1
비쥬얼 스튜디오 업데이트가 된건가요..? 매개변수 오류 관련 질문
0
249
1
C# 시리즈 || C++ 시리즈 자료구조 강의에 대한 질문입니다!
0
306
2
Activator 질문있습니다
0
332
1
이넘 타임 선언 질문
0
346
1
Sort 오름차순, 내림차순
0
323
1
질문 있습니다.
0
249
1
팩토리얼 문제
0
270
1
Sort함수 질문있습니다.
0
265
1
다형성 함수 질문 있습니다.
0
221
1
질문이 있습니다.
0
227
1
섹션2 연습문제 질문입니다.
0
214
1
안녕하세요~서버에 대해 질문이 있습니다.
1
282
1
텍스트 색깔이 제 편집기와 달라서 수강에 어려움이 있습니다ㅜㅜ
0
394
1





