반응형
아래 예제는 OuterClass 내부에 InnerClass가 중첩되도록 선언되어 있습니다.
OuterClass에는 비공개 멤버 변수인 "outerName"이 있습니다.
InnerClass에는 외부 클래서에 공개된 InnerMethod가 있습니다.
Main 메소드에서 OuterClass 인스턴스를 생성하고 OuterMethod를 호출합니다. 그러면 InnerClass 인스턴스가 생성되고 InnerMethod가 호출됩니다.
Outer method called Inner method called Outer name: Outer |
using System;
namespace ConsoleApp3
{
class OuterClass
{
private string outerName;
public OuterClass(string name)
{
outerName = name;
}
public void OuterMethod()
{
Console.WriteLine("Outer method called");
InnerClass inner = new InnerClass();
inner.InnerMethod();
}
//public class InnerClass
class InnerClass
{
public void InnerMethod()
{
Console.WriteLine("Inner method called");
// Access the outer class member
OuterClass outer = new OuterClass("Outer");
Console.WriteLine("Outer name: " + outer.outerName);
}
}
}
internal class Program
{
static void Main(string[] args)
{
OuterClass outer = new OuterClass("Outer");
outer.OuterMethod();
//InnerClass inner = new InnerClass(); // 오류
//inner.InnerMethod();
}
}
}
반응형
'C# > C#_기초강의' 카테고리의 다른 글
(C#) 클래스: Car 자동차, 속성(property) (0) | 2023.05.27 |
---|---|
(C#) 연산자 오버로딩 (0) | 2023.05.23 |
(C#) dynamic 동적 형식과 object 그리고 var 형식 비교 (0) | 2023.05.05 |
(C#) 선택적 인수 Optional arguments (0) | 2023.05.01 |
(C#) 명명된 인수 named arguments (0) | 2023.05.01 |