Return to Video

12-27 Create an Object

  • 0:01 - 0:03
    지난 동영상에서, 생성자는
    클래스 안에서 정의되며
  • 0:03 - 0:08
    객체 인스턴스를 만드는데 사용한다고
    간략하게 설명한 바 있습니다.
  • 0:08 - 0:11
    따라서 이 인스턴스를 만들려면
    TextView 생성자를 호출하고
  • 0:11 - 0:14
    다른 인스턴스를 만들려면
    또다시 호출하고, 이렇게 말이죠.
  • 0:14 - 0:17
    생성자를 호출하는 방법을
    코드에서 확인해 봅시다.
  • 0:18 - 0:22
    수량이라는 새 정수형 변수를
    만들고 초기 값을 2로 맞추는
  • 0:22 - 0:25
    방법을 기억하시나요?
  • 0:25 - 0:26
    새 객체를 만들고
  • 0:26 - 0:29
    변수 내에 저장하는 것 역시
    비슷한 포맷을 따릅니다.
  • 0:30 - 0:32
    대충 이런 식이죠.
  • 0:32 - 0:36
    하지만 int 데이터 형이 아니라
    객체 데이터 형입니다.
  • 0:36 - 0:39
    객체 데이터 유형은
    클래스 명에 붙이는 대로입니다.
  • 0:39 - 0:42
    이 경우에는 TextView죠.
  • 0:42 - 0:46
    변수 이름 규칙에 맞기만 하면
    어떤 이름이라도 상관없습니다.
  • 0:46 - 0:48
    그러면 우리는 이것을
    priceTextView라고 부르기로 하죠.
  • 0:48 - 0:50
    이제 새 객체와 동일해 집니다.
  • 0:50 - 0:52
    하지만 이 우변은 좀 더
    잘게 쪼개볼 수 있습니다.
  • 0:53 - 0:58
    우변의 경우 new로 시작하고
    거기에 객체 데이터 유형이 붙습니다.
  • 0:58 - 1:00
    여기선 TextView가 되겠죠.
  • 1:00 - 1:04
    TextView 클래스에서 정의된
    생성자를 여기서 호출합니다.
  • 1:04 - 1:08
    따라서 여기에 괄호로
    생성자로의 입력 아규먼트를 넣죠.
  • 1:08 - 1:11
    그러므로, 생성자가
    컨텍스트 객체를 요구할 경우
  • 1:11 - 1:13
    여기서 컨텍스트를 전달해야 합니다.
  • 1:13 - 1:18
    컨텍스트 객체는 앱 리소스 및
    기타 앱 환경 관련 부분에 대한
  • 1:18 - 1:20
    접근을 도와준다는 사실을
    기억하세요.
  • 1:21 - 1:24
    이렇게 해서 생성자를 호출하여
  • 1:24 - 1:26
    새로운 TextView 객체를 만들면
  • 1:26 - 1:31
    priceTextView라는 변수에
    이 새 객체를 저장할 수 있습니다.
  • 1:31 - 1:35
    이 변수는 데이터 유형이
    정하는 대로 한 가지의
  • 1:35 - 1:36
    TextView 객체만 가질 수 있습니다.
  • 1:37 - 1:40
    ImageView 객체를 만들고
    변수에 저장하는 예를
  • 1:40 - 1:42
    한 가지 더 보도록 하죠.
  • 1:42 - 1:46
    데이터 유형은 ImageView고,
    변수명은 coffeeImageView입니다.
  • 1:46 - 1:50
    그 다음에 할당 연산자,
    그 뒤에 새 ImageView가 옵니다.
  • 1:50 - 1:54
    철자는 여기 객체 데이터 유형과
    완전히 똑같습니다.
  • 1:54 - 1:57
    생성자를 호출하고
    입력을 전달해야 하므로,
  • 1:57 - 2:01
    이렇게 괄호 안에 입력을 넣습니다.
  • 2:01 - 2:03
    세 번째 예는 버튼 객체를 만들고
  • 2:03 - 2:06
    이 변수에 저장하는 것입니다.
  • 2:06 - 2:08
    데이터 유형은 Button이고,
    변수명은 submitOrderButton입니다.
  • 2:08 - 2:12
    그 다음에 새 버튼이 생성자를
    호출하게 하는 것이죠.
  • 2:13 - 2:16
    객체 데이터 유형은 원하는 대로
    정의하면 됩니다.
  • 2:16 - 2:20
    예를 들어, 여기 제가 Catview라는
    클래스 정의를 만들었는데요.
  • 2:20 - 2:23
    그러면 이 라인을 이용해
    새 CatView를 만들 수 있죠.
  • 2:23 - 2:25
    이 경우엔, 생성자가 고양이 이름을
    입력 문자열로 요구하기 때문에

    46
    00:02:25,380 --> 00:02:29,180
    괄호 안에 "호랑이"를 넣고
  • 2:29 - 2:32
    CatView 생성자로 전달했습니다.
  • 2:32 - 2:36
    이 생성자에 무엇을 입력으로
    전달할 것인지 결정하려면
  • 2:36 - 2:41
    클래서 자바 doc 파일이나
    소스 파일을 살펴봐야 합니다.
  • 2:41 - 2:46
    여기 전부에선 새 객체를 만들기
    위해 new라는 단어를 썼습니다.
  • 2:46 - 2:48
    자바 키워드 목록으로 돌아가 보면,
  • 2:48 - 2:51
    new라는 말이 목록에 있음을
    발견할 수 있죠.
  • 2:52 - 2:55
    자료를 살펴보다 보면,
  • 2:55 - 2:59
    팩토리 메소드로 객체를 만들라는
    말을 가끔 볼 수 있을 겁니다.
  • 2:59 - 3:02
    생성자를 대신한 것인데요.
  • 3:02 - 3:03
    예를 하나 들어 보죠.
  • 3:03 - 3:04
    새 미디어플레이어를 만들기 위해,
  • 3:04 - 3:09
    자료에서는 MediaPlayer.create라는
    메소드를 사용하라고 권하고 있습니다.
  • 3:09 - 3:13
    이는 MediaPlayer 객체를 리턴하여
    이 변수 안에 저장할 수 있게 하죠.
  • 3:13 - 3:17
    형식을 보면 먼저 객체 데이터 유형,
    여기선 MediaPlayer겠죠. M은 대문자로
  • 3:17 - 3:23
    하고 점을 찍은 후 팩토리
    메소드명이 옵니다.여기서는 create죠.
  • 3:23 - 3:26
    그리고 입력 아규먼트를 전달하여
    플레이어를 초기화 시킵니다.
  • 3:27 - 3:30
    이제 토스트(Toast)를 만드는
    예를 보겠습니다.
  • 3:31 - 3:34
    토스트란 앱에서 일시적으로
    튀어나왔다가 사라지는
  • 3:34 - 3:34
    메세지를 말합니다.
  • 3:35 - 3:39
    코드는 Toast로 시작합니다.
    T는 대문자여야 하는데, 그 이유는
  • 3:39 - 3:40
    객체 데이터 유형이기 때문입니다.
  • 3:40 - 3:44
    뒤에 점을 찍고 팩토리 메소드명
    makeText를 붙입니다.
  • 3:44 - 3:49
    그리고 입력 아규먼트를 전달하여
    토스트 메세지를 만듭니다.
  • 3:49 - 3:52
    팩토리 메소드명과 입력 아규먼트가
    무엇인지 알기 위해서는
  • 3:52 - 3:55
    자료에 있는
    토스트 클래스 부분을 확인해 보세요.
  • 3:55 - 3:58
    일반적으로, 객체를 만드는 데
    생성자를 쓸 지 팩토리 메소드를
  • 3:58 - 4:02
    쓸 지 알기 위해선
    해당 객체를 만드는 법을
  • 4:02 - 4:04
    구글 검색으로 찾아보면 됩니다.
  • 4:04 - 4:07
    새 객체를 만드는 데는 생성자
    형성이 가장 일반적입니다.
  • 4:07 - 4:10
    팩토리 메소드를 써야 하는 상황은
    그리 흔하지 않습니다. 하지만
  • 4:10 - 4:13
    어떤 쪽을 써야 할 지 확실하게
    알려면 해당 객체 만드는 법을
  • 4:13 - 4:14
    구글 검색으로 찾아 보세요.
  • 4:15 - 4:18
    객체 만드는 법을 실습해 볼
    기회입니다.
  • 4:18 - 4:20
    각 코드 라인마다
    오류가 한 가지 있습니다.
  • 4:21 - 4:22
    어떤 오류인지 찾은 다음
  • 4:22 - 4:25
    아래 빈 칸에 올바른 코드를
    적어 보세요.
タイトル:
12-27 Create an Object
概説:

more » « less
Video Language:
English
Team:
Udacity
プロジェクト:
UD837 - Android for Beginners
Duration:
04:27

Korean subtitles

改訂