반응형
[C# 프로그래밍 : 클래스 개념 꽉잡기 - 확장, 클래스vs구조체]
1. 메소드 확장 함수
- 상속받아서 메소드 추가하지 않고, 기능을 확장해서 사용 가능
- 정적 클래스 (static class)이어야만 함
- public static 반환형식 메서드 이름(this 대상형식 식별자, 매개변수 목록){...}
(ex : public static void Print(this AA aa, string str) {...} -> aa.Print("문자열");이렇게 사용 가능..)
- 하나의 복합적인 클래스를 모아서 어떤 특정한 객체들을 가져다가 함수들을 통합해서 사용한다거나, 자주사용하는 함수를 묶어서 사용한다거나 할 때 좀 더 쉽게 사용할 수 있게 해줌.
- 파라미터도 여러개 넣을 수 있음
2. 클래스 vs. 구조체 : 같은 사용자 자료형이지만 자료의 크기가 작을 때, 구조가 단순할 때 구조체를 사용하는게 유리.
- 클래스(Class)
- 특징 : 참조 타입.힙에 생성
- 사용 : new 연산자로 생성
- 파라미터 없는 생성자 가능
- class 클래스이름 {....}
- 구조체(Struct)
- 특징 : 값 타입이라서 참조할 수 없음. 복사해와도 서로 영향 안줌. 스택에 생성함.
[스택?힙?] : 저번 시간에 배웠던 것 같지만 여전히 헷갈려서 다시 검색해 봄.
- 스택 : 메모리에 벽돌처럼 차례차례 차곡차곡 변수들을 쌓고 중괄호 만나면 메모리에서 제거
- 힙 : 데이터 계속 유지함. 사용하지 않으면 가비지 컬렉터가 수거해 감. 참조타입변수는 힙과 스택을 함께 사용하는데 힙 영역에는 데이터를 저장하고 스택영역에는 데이터가 저장된 힙의 메모리 주소를 저장한다.
참고 블로그 : https://truecode.tistory.com/46
- 사용 : new연산자없이도 생성 가능(AA aa = new AA(10,20); 은 물론 AA aa;도 가능 )
- 생성자 : 반드시 파라미터가 있어야함
- 대부분 public으로 설정되어 있음. 아무나 갖다 쓸 수 있도록.
- struct 구조체이름{...}
클래스보다 단순할 때 사용하는 거라고 하셨지만 정확히 struct가 어떤 경우에 쓰이는 지 감이 안 잡힌다.하다보면 알겠지?
패스트캠퍼스 [직장인 실무교육]
프로그래밍, 영상편집, UX/UI, 마케팅, 데이터 분석, 엑셀강의, The RED, 국비지원, 기업교육, 서비스 제공.
fastcampus.co.kr
<본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성되었습니다.>
#패스트캠퍼스 #패캠챌린지 #직장인인강 #직장인자기계발 #패스트캠퍼스후기
#C#과유니티로배우는게임개발올인원패키지Online.
반응형
'코딩 공부 > 패스트캠퍼스 게임 개발 올인원' 카테고리의 다른 글
패스트캠퍼스 챌린지 22일차 (0) | 2022.02.14 |
---|---|
패스트캠퍼스 챌린지 21일차 (0) | 2022.02.13 |
패스트캠퍼스 챌린지 19일차 (0) | 2022.02.11 |
패스트캠퍼스 챌린지 18일차 (0) | 2022.02.10 |
패스트캠퍼스 챌린지 17일차 (0) | 2022.02.09 |