나우캠퍼스 C# 언어 8강. 클래스(1/2) 업그레이드 > c#

c#

Microsoft C# Programming 강의 리스트

나우캠퍼스 | C# 언어 8강. 클래스(1/2) 업그레이드

본문

※ 영상을 선명하게 보기 안내
  1. 유튜브 영상에서 오른쪽하단에 톱니바퀴를 클릭합니다.
  2. 팝업목록에서 "품질" 선택하세요.
  3. 원하는 해상도를 선택해주세요.
※ 모바일에서 Wifi가 아니라면 데이타가 소진될 수 있으니 주의바랍니다.
나우캠퍼스님의 c#강의 청각장애인을 위한 자막
15444117190252.jpg

 


말씀이나 8인 황사 e 태사 입니다
자 앞에서 우리 7강 에 프로젝트 염불 다 한번 해 보셨습니까
에그 프로젝트를 해보는 것이 가장 중요합니다
자 이제 8강에서 뇨 어크 리스 를 배우게 되는데요 이 클래스 는 아마
객체지향 언어의 가장 하이라이트 이고
일반 올라 의 배웠던 c 언어 하고는 완전히 차별되는 받은 내용이 바로
이 클래스 에 대한 분들이죠
또한 우리는 클래스를 배우면서 여러가지 그 시샵 에서 제공해주는 클래스
라이브러리를 이제 사용하게 될 것이고요
또한 그런 라이브러리들을 또 뭐 뭐 모아서 또 우리가 원하는 용도에 또
새로운 클래스를 만들어서 사용하는 이런 부분들도 분간이 안 해서 또 그런
내용들을 쭉 진행해 나갈 것입니다
자 그렇기 때문에 이 8강의 내용 3회에 중요하고요
또 요것을 기반으로 해서 여러분들이 이제 디자인 패턴이 라든가 아니면 뭐
클래스 디자인 하던가
뭐 이런 쪽으로도 좀 관심을 가지고 고런 위에 책이 독립적으로 되어져
있습니다 그래서 고런 류의 책들을 같이 보면서 또 클래스 의 문법을
해온다면 그래도 탄탄하게 이렇게 갈 수 있고 또 안목을 많이 넓힐 수
있을 거라 전생을 합니다
자 그러면은 8강 클래스 에 대한 내용을 같이 보도록 하겠습니다
아 자 먼저 목차는 요 어머니 클래스 에 대한 개념을 제가 먼저 어
정리를 해 드릴겁니다 그 다음에 헛갈리는 분들 다시 정리 하고요
어 그 다음의 클래스 의 형식 중요하죠
그 다음에 접근 한경 자라고 해서 이 클래스를 어떤 식으로 사용할 것인가
또 안에 있는 것을 다 보여줄 것인가 감출 것인가
뭐 이런것들 어 설명을 드릴 겁니다 그 다음에 객체 생성과 멤버 접근이
그래서 우리 클래스를 사용할 때 또 밖으로 노출이 될 부분과 그렇지 않은
부분들 어떻게 하는지 살펴 볼 것이고요
그 다음에 생성자와 소멸자 라는 것은 기본으로 따라 붙습니다
그래서 고기에 대한 설명들 그 다음에 정적 멤버 에서 이건 스테 테에게
대한 부분 되어 요 부분은 제시 10불 잡아 시샵 모든 의 대부분 다
있습니다 있는데 각각 워너 마다 약간의 역할들이 좀 약간씩은 차이가
있어요
그래서 고호의 대한 상대를 비교하면서 제가 설명을 드리고 그 다음의
클래스 탐조 그다음 디스 까지 해서 본 그 클래스 에 대한 기본적인 그
문법적인 부분들을 마치도록 하겠습니다 그리고 미초
그 다음에 구독과 좋아요 눌러 주시고요
어 그 다음에 언제 페북 친구들 좀 소개 들 소개를 두루 좀 해줄 수
썼으면 좋겠습니다
자 그러면은 음 내용을 같이 보도록 하겠습니다 자 제일 먼저 클래스의
개요 부터 볼게요 먼저 객체지향 언어의 가장 핵심인 바로 클래스를 보도록
하겠습니다 자 클래스를 너무 어렵게 생각하지 많은데요
너무 이렇게 생각하지 마시고요 자 그 간단명료하게 곳들을 정리를 해
드리도록 하겠습니다 자 클래스 란 있게 되어 있습니다
그래서 클래스 의 개념을 전 이렇게 잡고 있는데요
자 변수와 메소드를 어떻게 한 것이다
그룹화 한 것을 바로 뭐라 그런다 클래스 라고 얘기합니다
그 파이 났던 것은 그건 뭐겠습니까 서로 묶어 탄 얘기죠
예 그래서 그렇게 무 건 어때 무엇을 먹느냐 풀이 만해서 무엇을 묶을 수
있냐
바로 값에 대한 변수 그 다음에 이 변수의 값을 처리하게 메서드를 한데
묶은 것을 클래스 라고 얘기하는 것이죠
그 다음에 0이 나오는 이 변수와 그 며 든요
어떻습니까 공통된 목적을 가지고 있죠 그래서 그 클래스 용도에 맞는 그런
그 목적을 가지고 어서 한때
묶어 온 이것을 바로 본다 뭐라고 한다. 바로 클래스 아우디 합니다
어 시원하 에서는 변수 y 매스 그 함수
이것들 이제 어떻습니까 전부 다 뭐 흩어져 있었죠 파평 같이 그리고
그것을 파편에 하나씩 하나씩 모아서
더 하나씩 하나씩 꿰매어 서 코드를 작성했지만 어 이런 부분들이 이제
어떻든 클래스 안에 싹다 넘는 거죠
너 놓고서 거기서 불러서 쓰는 그런 형태의 가 바로 클래스입니다 그렇기
때문에 이렇게 막 파편 주로 넣어 저보단 것이 이제 클러 스와 되면서 좀
정리가 됐죠
예 그래서 어 크 래 스 를 잘 활용하는 것을 굉장히 규명하고 요 그
다음에 시샵 에서 제공되는 대부분의 라이브러리 일들은 전부 다 이 클래스
와 된 그는 라이브 를 제공하고 있습니다
자 그러면 즉 개념 1 볼게요 자 먼저 음 클래스의 키워드가 있습니다
그래서 클래스가 원은 키워드가 있구요
그 다음에 이 클래스를 사용하기 위해서는 뉴 라고 한 연산자 를 통해서
우리가 생성을 해서 사용 해 맙니다
클래스를 율 을 사용하지 않고 우리가 선언을 하게 되면은 이것은 클래스를
참조할 수 있는 하나의 변수가 됩니다 그래서 오나보다 앞에서 해 봤었죠
그래서 객체를 참조 여긴 변소에서 객체에 대한 하나의 별명과 같은 변수가
선언된 다고 제가 말씀을 드렸습니다 해서 클래스 에서도 그런 것들이
존재하고 요 그래서 그것을 일명 클래스 참조 변수 하고 얘기를 합니다
그렇죠 자 그 다음에 클래스를
뉴 를 통해서 생성할 때 에만 이것이 개체 화 것 됩니다
도대체가 된다는 것은 거기에 관련된 여러가지 메모리 라든가 메쏘드 라든가
이런 분들이 메모리 특 자리를 찾게 없는 것을 의미를 하죠
클래스의 개념 을 보다보면 인스턴 수와 객체 라고 하는 그런 단어들이
상당히 많이 나옵니다
그래서 어 거기에 대한 분들을 울력 좀 분명히 좀 알고 있을 필요가
있는데요
어 고 것을 제가 무 9분 해 드릴께요 그래서 이 인스턴스와 객체 란
분들의 msdn 에서도 잘 9분을 하지 않습니다 그래서 보통 인스턴스와
이 오브젝트 라고 하는 그저 객체라는 것을 혼용해서 쓰는 경우가 많지만
사실상 그 본질 쌍코 내용이 사실 틀리죠
예 그래서 곳들을 자 정리를 하면 해드리겠습니다
자의 선수와 객체의 관계되어 있습니다 그래서 는 인스턴스 객체를 요렇게
구문 했는데요
자 이스턴 스는 본질입니다 즉 본지 줘
그 다음에 개체는 실물이 입니다
실물이 고 이 객체는 객체 생성의 따라서 즉 객체 생성 학에서는 뭡니까
뉴 를 이용하죠 뉴 를 이용해서 생성 했을 때 그 객체는 어떻습니까
서로 구별되지 조 그래서 구별되는 하나의 실물을 가지고 있는 것이 바로
대체 라고 이렇게 볼 수가 있습니다
자 이것을 코드 쪽으로 좀 볼 수가 있는데요 니 나오는 a 테스트와 는
uae 의 a 테스트 푸는 ua 돼 있습니다
자 테스트 와인과 테스트 투 는 이미 뉴 를 통해서 생성을 했기 때문에
테스트 왕가 테스트는 뭡니까
객체 적 즉 오브젝트 입니다 하지만 이 테스트 왕과 테스트 투는 서로
공통된 점이 있죠
a 라고 하는 클래스를 그 본질로 가지고 있는 형태죠
그래서 이에 이라고 하는 이 부분 저기요 부분을 바로 이 인스턴스
얘기합니다
그래서 지금 테스트 왕과 패스트 투 라고 해서 객체 명은 다르지만 생성에
있어서 어떻습니까 a 라고 하는 클래스를 통해서 생소하고 있죠 그래서
요런 부분들을 인스턴스 라우 이해하고 그 다음에
파생 돼 서로 다른 이름을 가지는 동일한 객체를 오브젝트 라고 얘기합니다
그래서요 것을 조금 더 명확하게 좀 얘기 하면 요 요 것을요 얘기하면
같은 베이 인스턴스가 지나 그 차 테스트 원과 패스트 투는 a 라고
하는 그 클래스 인스턴스로 되어 있죠
그 다음에 그 안에는 어떻습니까 테스트 왕과 테스트 투가 a 에서
정의되어 있는 클래스 의 변수와 매수 들다 가지고 있잖아요
이렇게 클립의 본질상 테스트 왕가 테스트 투 는 a 라는 인스턴스를
가지고요 하지만 테스트 1 테스트 투는 액체로서 서로 구별되지 요 예
그럴 때는 어
그런 어구 * 된 것을 바로 객체 라고 얘기하면 되어서 인 스톤 수와 그
다음에 움직 객체에 대한 부분이 나오면 은 이렇게 여러분들이 생각을 정리
하시면 되구요
어 보통 보면은 이스턴 수와 객체를 9분하지 안돼
어 그렇게 하는 이유가 아마 객체를 이제 1 를 생성할 때 하나의 생성할
때는 힘쓴 살아 생성될 것이고 객체 1 생성되기 때문에 이것을 조금
혼용해서 쓰는 그런 부분이 있지 않나 그런 생각을 합니다 하지만 어
정확히 나온다고 하면 어 지금 제가 말씀드린 요런 형태로 같은 as
인스턴스 를 가지는 일단 테스트 1가 테스트 투 로 주로 객체를 9분해서
우리가 생각을 할 수가 있습니다
자 그러면은 클래스 형식과 접근 한 정자를 1 보도록 하겠습니다
그래서 우린 앞에서 클래스 는 변수와 메소드 를 우리가 함께 묶었다
그랬습니다 그리고 키워드는 클래스 라고 했습니다
그러면 이 클래스 란 교우들을 가지고서 이 변수와 메소드 들 어떤 식으로
묶어 낼 것인가
거기에 대한 부분이죠 그 형식적인 부분 보겠습니다 자 클래스의 형식입니다
클래스 의 형식은 구조체 연식과 아주 인사합니다 그리고 어떻게 보면은
구조체의 1 의 업그레이드 된 형태가 바로 클래스 의 형식 이라고 볼
수도 있겠습니다
그래서 시 언어학 옷이 사회에서는 아쉽 어플에서는 구조체의 있고 그
다음에 뭐 시 워너 에서는 또 앞에 뭐 여러가지 그 구조체에 대한 뭔
태그 라든가 뭐 이런것들이 있을텐데요
10분에서 이렇게 간소화 되어 있죠 서 구조체 쓰고 그렇지 이런 써지고
여기 안에 다 몰려 줬으니까 변수와 그 다음의 메소드를 넣을 수가 있었죠
시프레 선요 시원 에서는 변수만 허락이 됐구요
아 어 그 다음에 그 시샵 에서 나오는 클래스
물론 이 클래스 는 자바 시 무플 다 똑같습니다 형태는 똑같죠
클래스 이렇게 써 주고요 클래스 이러면 적어주고 여기 안에 물 줘 줍니까
변수와 메소드 들을 여기 안에다가 올라 코드를 작성 해 주면 됩니다
그 다음에 어 구조체 도 2매 변수와 매서 d 에 접근할 때는 또는
사용할 때는
구조체 명을 적어 주고 그다음에
멤버변수 다음에 멤버 메소드를 이와 같이 사용했는데요 이것이 클래스
에서도 똑같이 사용합니다 정해서 아예 새로 의 어떤 개념을 가져오는 것이
아니라 기존 개념을 자유 꿈 중 발전시켜서 어 그 용도 대로 쓰는 형태를
가지고 있죠
아 그래서 우리가 처음부터 또다시 새롭게 배우에 대해 그런 어떤 누구를
말이 좀 줄여 주는 형태로 어느 계속 발전합니다 많이 #2
그런 분들을 전혀 배려하지 않았다면 시원 어와 시샤 완전히 다른 겉에
키워드 들과 내용으로 구성되어 있었겠죠
하지만 어시 10불 잡아 해 프로그래머 들을 신 샵으로 몰고 가기
위해서는 그들의 어느 의 장점들을 뭐 뭐 모아서 쭉 시 샵으로 가져갈
수밖에 없고 그 언어의 장점을 좋아하는 프로그래머들은 또 시 샤워 너를
만났을 때 꼭 새로운 언어가 아니라 내가 이미 알고 있던 어느 쪽 말 퍼
플러스 땐 억 음 해외음원 아내 라는 시골을 해서 시시한 의 세계로
조금 조금씩 발을 들여놓게 되는 것이죠
아 어 기본 형식은 있게 돼 있고요 그 다음에 요것은 좀 차이가 있습니다
구조체 선언 요가 평입니다 우리가 앞에서 배웠듯이 5
하지만 클래스 선언 은 참조 형입니다 그러면 이 클래스 선언에 참 조용히
실제 객체가 되기 위해서는 바로 뭐다
어 뉴 라고 하는 이 연산자를 써서 생성을 했을 때에만 뭐다 객체 로써
존재하게 되는 것이죠 그 외에는 뭡니까 같은 클래스를 참조할 수 있는
그런 변수 같은 클래스를 참조할 수 있는 어떤 별명과 같은 변수로 이렇게
존재하게 되는 것이죠 자 그래서 전체적인 그 형식은 요 어 이와 같습니다
클래스 이름 있고요 그 다음에 이렇게 되죠
자 그 다음에 클래스 며 이구요 안에 어 요 안에 클래스 안에 들어있는
얘네들 모드를 우리가 보통 멤버라고 이 합니다
근데 이 멤버를 염 잘 따져보세요 2 멤버 안에는
변수와 때문에 매수도 왠 없습니다 물론 그 클래스 안에 또 다른 클래스를
또 포함할 수 있지만 그것을 배제하고 순수하게 클래스만 을 본다고 하면
은 그 클래스 안에 있는 멤버 안에는 변수와 메서드 도 있고 2매 3rd
와 변수는 서로의 목적이 어떻다 같은 목적을 가지고 있죠
하나의 그 클래스 의 가 처리 해야 돼
그렇죠 그런 부분들을 이 클래스 안에
변수와 메소드 형태로 닿아 가지고 있는 것이죠
정리가 깔끔하게 됐습니다
그래서 클래스 영식이 1일을 볼게요 자 데이트 라고 하는 클래스 아
만들었습니다
자유데이트 넘 어떻습니까 날 짜 잔 오묘 2
뭐 요런 년도 요런 정부들이 기본적으로 다 있잖아요 그런데 이런 것들이
시온아 에서는 각각 분리되어 있는 그런 형태로 존재 했었는데
이것들 다 모았죠 모아서 이 클래스 안에 다 집어 든 거죠 왜 우리가
공동의 의 목적을 가지고 있기 때문에
자 그래서 지금과 같이 좍 모아서 이렇게 선언을 했구요
그다음 f 링크 라고 하는 요런 메소드들을 넣습니다 이 매스 들은 외부의
어떤 값을 물론 할 수 있었겠지만
어 보편적인 그런 역할을 내부의 값을 출력하거나 내부의 어떤 내용들을
처리하게 서 존재하는 것이죠 자 그래서 프린트에 씁니다
그래서 거기 안에 있는 이용을 먼스 페이 해서 내부 변수의 값을 출력하는
그 형태로써 이렇게 서론 해서 사용을 하고 있죠 그래서
아 이렇게 하는구나 클래스 안에다가 다 집어넣는 구나 라고 이론들이
생각하시면 됩니다
아 자 이런 그 클래스를 사용할 때 나 앞에서 말씀드렸듯이 구조체는 정도
높은데 있죠
오픈날 입니다 그래서 언니 나 그 구두 체를 선화 함과 동시에 거기는
메쏘드 라든가 그 다음에 변수 라든가 이것들 다 사용할 수 있도
기본적으로 되어 있지만 어크 래 스 난 이제 뭡니까 감축은 감추고
저하되며 보여주곤 보여주고 그 다음에 또 상속받고 상속하고 뭐 이런
것들을 조금 좀 세분화 시켜서 좀 조밀 조밀하게 해로운 그런 형태가 바로
이 클래스입니다 그래서 이 클래스는 이 접근 한 정작 외부에서 접근하는
것과 내부에서 접근하는 즉 접근한다.는 이 뭐겠습니까 사용 한다.는 거겠죠
사용할 때 내부에서 사용할 수 있고 할 것이냐
외부에서 사용할 수 있도록 할 것이냐 아니면 은 이것들 다하고 타야 할
것이냐 라는 부분들을 우리가 설정해 줄 수가 있는데요
이것이 가장 그 클래스 의 하이라이트를 볼 수도 있죠
자 그래서 접근한 2인자 보겠습니다 여기 보면은 클래스 멤버 입니다 맴
모아 앞에서 보았듯이 멤버는 모습 겁니까 변수와 메소드를 전부 포함 하죠
그래서 이 멤버에 대한 접근 권한 설정을 하는 것이 접근 한 정자입니다
접근을 안정 아니다 는 겠죠
자 그래서 이프 아이 베이트 프 택 td 퍼블 2인 터널 풀패키지 인턴을
뭐 요렇게 어 접근 한 경제가 있는데요 주로 많이 사용되는 것이 바로
프라이 베이트 와 그 다음에 프로텍 티드 그 다음에 퍼블 u 정도를 많이
사용합니다
부터 인 터널이 라든가 뭐 프로텍트 인턴을 같은 경우에는 모인 터널 뭐
암시적으로 사용하기 때문에 우리가 뭐 어 생각하지 않고 그냥 코디를 해도
언 내부적으로 전부 다 사용이 되고 있는 형태죠
그래서 어 요 부분을 울려 별로 고려하지 않고 주로 우리가 신경 쓰는
그런 접근 한 영자는 요 세가지 근데 이어 세 가지 도 10불 잡아 하에
있던 그 내용 그대로 가지고 있습니다
취 잡 에서 새롭게 등장한 것은 바로 인턴 어디라고 는요 개념 양
프로텍팅 인턴 어디라고 하는 요금만 새롭게 추가 되었고 나머지 들은 그
사용방법이 라든가 상속의 있었어도 동일한 형태의 역할을 하게 되는 것이죠
자 그래서 클래스 자체 적용하는 접근 함 전자는 풋 퍼블릭 와인터널 이
두가지가 있습니다 그래서 퍼블릭 을 우리가 명시적으로 하구요
버블링 을 하게 되면은 뭐 그 클래스를 뭐 다 사용할 수 있는 것이죠
누구나 다 사용할 수 있고요 그 다음에 인터 너라고 이렇게 해 놓게 되면
은 인 터널이 어 뒤에서 삶은 드리겠지만 하나의 서로 가트너 3 물리
안에서만 사용할 수 있는 그런 형태로도 여기 있습니다
그래서 이 부분은 인 터널은 우리가 클래스를 생성 하기 위해서 요렇게
우리가 선언 하잖아요 그럼 요 앞에 인 터널이 생략된 거야 사실이며
그래서 별로 우리가 생략
어제 생각하지 않고 그냥 보통 쓰는 경향이 있습니다
그 다음에 뭐 그 가트너 3 물리 안에서 사용한다. 사용하지 안다 하더라도
우리가 그렇게 어셈블리 까지 뭔가를 해 가지고 이렇게 생활은 애가 많지만
은 겁니다 해서 아 이런게 있구나 라는 정도로만 있는데 기억하시고 어떻게
해서 또 인 터널에 대한 분도 제가 설명을 드리긴 하는데 아 이런게
있구나 라는 정도만 * 미 끼 하시면 됩니다
자 그러면 접근 한 명 자 를 사용하기 위한 형식이 필요하겠죠
그래서 접근한 정자는 요 크로스 가 있구요
클래스 앞에 초 여기 앞에 우리가 퍼블릭 을 쓰거나 저 인터 넘은
생략해서 쓴다고 했었죠 그래서 퍼블릭 의 명시 에서 쑤는 고 얘들 여러
지봉 꺼구요 그 다음에 인턴 생략한 형태이기 때문에 뭐
돌릴 거의 없습니다 자 그 다음이 접근한 정자가 있습니다 접근 한정자
적극 1년 자 있어서 변수와 메소드의 제일 앞부분에 요거를 두어서 이
변수를 내부 안에서만 쓰도록 할 것인가 아니면 밖으로 노출 시켜서 누구나
즉 외부에서 늘기 가서 다 꿀 수 있도록 즉 외부에서 이 값을 3 더블
해서 내부에서 처리할 수 있도록 즉 이 클래스 안에서 내가 가지고 있는
이 변수 하나를 보여주는 통해서 새 용자가 좀 생 죄가 거기다 값을 낼
수 있도록 이런것들을 제공한 달 하기 위해서 이 접근 1장 들을 사용하죠
또한 이 메쏘드 들도 똑같습니다 2매 스워드 리 내부 안에서 처리되는 고
내용을 위해서 내부에서만 사용하는 것도 있고요 또는 외부에서 그 매수
들을땐 게 와서 우리가 호출 해줘야 지만 되는 그런 분도 있습니다 그래서
그럴 때 그 접근 한 정자를 우리가 지정해 줘야 되겠죠
자 그러면은 클래스 안에서 접근 한정자 역할을 먼저 보도록 하겠습니다 자
큰 에서 아닙니다
작 퍼블 이렇게 되어 있습니다 자 퍼블릭 을 냈으며 는 공적인 물론
의미가 있죠 그래서 이것은 클래스 외부에서 무엇을 멤버를 다 사용할 수가
있습니다
그렇죠 아 그렇게 돼 있고요 그 다음에 상속 관계에 있어서 뒤에서도 이제
배우 겠지만 상속 관계에서도 모두 다 사용할 수 있습니다
즉 아군 아 또는 아무 클래스 에서 또 나무 편 그 매니 안에서 또
매수도 안에서 해당되는 그런 멤버들이 라든가 어험 수들을 이제 호텔에서
쓸 수 있단 얘기죠
자 반면에 프라이 베이트는 사적인 개인적인 를 위해 했죠 그래서
사생활침해 물게 돼 있잖아요 초 그래서 그 의미와 똑같습니다
클래스 또는 붙자 내에서만 멤버에 접근할 수 있지
그 외부에서는 그 함수를 호출하거나 변수 를 호출할 수가 없습니다
지금 그 클래스 안에 있는 메소 그 안에서 그 클래스 안에 있는 또 다른
매수 들을 호출하는 또는 그 안에 있는 변수를 사용하는 일 예정 들어가
사용할 수 있지

댓글 0개

등록된 댓글이 없습니다.

본 사이트의 컨텐츠는 명시적으로 공유기능을 제공하고 있는 공개된 자료를 수집하여 게시하고 있습니다.

저작권, 강의등록, 광고, 제휴등은 "관리자에게 문의"로 메세지 주시면 확인후 답변드립니다.

Menu