728x90
반응형
안녕하세요 아임코딩입니다.
이번에는 C#에서 제공하는 생성자와 종료자에 대해서 알아보겠습니다.
생성자
생성자는 클래스가 생성될 때 실행되는 메서드입니다. 생성자에서는 보통 객체가 가진 필드를 초기화하는 역할을 합니다.
생성자 문법
[접근 제한자] [클래스 이름](매개변수들)
{
}
전체 코드
using System;
namespace Tistory
{
internal class Program
{
class Person
{
private string name;
public Person() //기본 생성자
{
name = "tom";
Console.WriteLine("기본 생성자가 실행되었습니다.");
}
public Person(string name) //매개변수 생성자
{
this.name = name;
Console.WriteLine("매개변수 생성자가 실행되었습니다.");
}
public void printName()
{
Console.WriteLine(name);
}
}
static void Main(string[] args)
{
Person person1 = new Person(); //기본 생성자 호출
Person person2 = new Person("jerry"); //매개변수 생성자 호출
person1.printName();
person2.printName();
}
}
}
Person 클래스를 정의하고
기본 생성자인 public Person()과
매개변수 생성자인 public Person(string name) 을 만들었습니다.
생성자는 객체를 생성할 때 new Person() 과 new Person("jerry") 코드를 사용하는데 이 때 호출됩니다.
기본 생성자는 객체가 가진 name 필드를 "tom"으로 저장하고
매개변수 생성자는 매개변수로 전달한 문자열을 name 필드에 저장합니다.
생성자에서는 주로 객체가 가진 필드를 초기화하는 역할을 합니다.
코드 실행 화면
코드를 실행하면
Person person1 = new Person(); 이 문장에서 기본 생성자가 호출되어서 첫번째 줄이 출력됩니다.
Person person2 = new Person("jerry"); 이 문장에서 매개변수 생성자가 호출되어 두번째 줄이 출력됩니다.
그 후 person1.printName() 과 person2.printName()이 호출되어 tom 과 jerry 가 출력됩니다.
728x90
반응형
'프로그래밍 > C#' 카테고리의 다른 글
[C#] 정적 메서드 static method (0) | 2023.05.12 |
---|---|
[C#] 정적 필드 static field (0) | 2023.05.12 |
[C# 문제풀이] 백준 2439 번 별찍기 (0) | 2023.05.11 |
[C# 문제풀이] 백준 2438 번 별찍기 (0) | 2023.05.11 |
[C# 문제풀이] 백준 25314 번 코딩은 체육과목입니다. (0) | 2023.05.11 |