45.8 IDisposable 인터페이스 사용하기
이번에는 닷넷에 내장된 IDisposable 인터페이스를 사용해 보겠습니다. 이를 상속하는 클래스는 Dispose() 메서드를 구현해야 하는데요. 이 메서드는 해당 클래스의 개체를 다 사용한 후 마지막으로 호출해서 정리하는 역할을 합니다. 다음 내용을 입력한 후 실행해 보세요.
IDisposable 인터페이스 사용: IDisposableDemo.cs
using System; class IDisposableDemo { static void Main() { Console.WriteLine("[1] 열기"); using (var t = new Toilet()) { //특정 프로세스를 종료하면 자동으로 닫기 수행 Console.WriteLine("[2] 사용"); } } } public class Toilet : IDisposable { public void Dispose() { Console.WriteLine("[3] 닫기"); } }
실행 결과
[1] 열기 [2] 사용 [3] 닫기
using 문은 IDisposable 인터페이스를 구현하는 개체를 올바르게 사용할 수 있도록 도와줍니다. using 문으로 개체를 묶어 생성하면 해당 using 문이 종료되면서 자동으로 Dispose() 메서드를 호출해서 정상 종료하도록 처리합니다.