클래스만들기?

> class Square
. {
.     public int Width;
.     public int Height;
.     public static string Creator;
. }
> Square.Creator = "RedPlus";
> Square square1 = new Square();
> square1.Width = 100;
> square1.Height = 100;

**static은 공유 느낌임 (.) = 이걸 안 쓰고 인스턴스를 사용함.** 

<aside> 💡 클래스는!

C# 프로그래밍의 기본 단위로 **새로운개체(실체)**를 생성하는 설계도(청사진)임!!!

자동차라는 개체(objedct)를 만들려면 자동차 설계도가 필요하쥬???

프로그래밍에서도 설계도가 필요한데.. 이 역할을 하는 것이??

클래스(class) 이다!!!

즉, **클래스는 개체를 생성하는 틀(템플릿)**이며, 더 간단히 말하자면 ‘무엇인가를 만들어 내는 설계도’ 이다!

</aside>


#클래스 선언하기

public class 클래스이름
{
	// 클래스 내용 구현
}
class Square
. {
.     public int Width;
.     public int Height;
. }
> Square square;
> square.Width = 100;
System.NullReferenceException: 개체 참조가 개체의 인스턴스로 설정되지 않았습니다.
> Square square = new Square();
> square.Width = 100;
> square.Height = 100;
> $"{square.Width}, {square.Height}"

>>"100, 100"

static과 정적 메서드란?

<aside> 💡 C#에서 static을 정적으로 표현합니다. 다른말로 표현하면 공유(shared)입니다!

static이 붙는 클래스의 모든 멤버는 해당 클래스 내에서 누구나 공유해서 접근할 수 있습니다!

메서드에 static이 붙는 메서드를 정적 메서드라고 하는데, 이를 공유 메서드(shared method)라고도 함!

</aside>