객체 지향 개념 규칙은 외워라 = 암기를 안하면 설계 잘할수 없다?
검증 방법 및 형성 요약
클래스 와 객체
클래스 정의 객체를 정의 실제 존재 ,사물 또는 개념
클래스 용도 객체를 생성 객체가 가지고 있는 기능 ,속성에 따라 다름
ex 클래스 객체
-----------------------------------
제품 설계도 제품
tv 설계도 TV
붕어빵 기계 붕어빵
객체의 구성 요소 - 속성 , 기능
객체지향개념 -실제세계 ==> 가상세계로 ! (반대로 헷갈리지 말것)
속성 -> 변수 ex 색깔, 전원상태, 채널
기능 -> 메서드 ex 켜기끄기 볼륨 낮춤 높이기
속성+ 기능 = > 클래스 (설계도)
객체 = 인스턴스
객체 : 모든 인스턴스 대표 일반용어 ex tv 객체
인스턴스 : 특정 클래스로부터 생성된 객체 ex tv 인스턴스 /tv 객체
클래스 -> 인스턴스 객체 (인스턴스화 = 제품생성 )
설계도 -> 제품
클래스 왜 필요해요? 객체를 생성하기 위해서 ( 설계도는 제품생산을 위해)
객체는 왜 필요해요? 객체를 사용하기 위해서 (제품은 제품을 사용하기위해)
객체를 사용하는게 무슨 의미? 객체가 가진 속성(변수)과 기능(메서드)을 사용하려고 ( Tv의 특징 속성 그리고 기능을 사용한다)
public class 가 있는 경우
public class Hello2{} class Hello3{}
* 소스 파일의 이름은 반드시 public class 의 이름과 일치
public class 가 없는 경우
class Hello2{} class Hello3{}
* 소스파일의 이름은 Hello2.java * 소스파일의 이름은 Hello3.java
주의
- 하나의 소스파일 -하나의 public class
- 하나의 소스파일 = 하나의 클래스만 작성하는게 바람직
- 파일명 소스파일 이름 public class 대소문자 구별
클래스 명 변수명 ;
클래스의 객체를 참조하기 위한 참조변수
변수명 = new 클래스명() ; 클래스 객체 생성 후 객체의 주소를 참조 변수에 저장
Class Tv {
String color ;
void power() {power =! power;}
}
ex : Tv t 참조변수= 리모컨 tv클래스 타입의 참조변수 t 선언
ex 2 : t = new Tv(); Tv 인스턴스 생성 후 생성된 tv 인스턴스 주소를 t에 저장
참조변수를 > 객체에 연결하면 > 실행 (객체사용) 된다.
t.channel = 7 ; // tv 인스턴 멤버 변수 chnnel1 의 값 은 7
ex : t 는 리모콘
System.out.Println("" + t.channel1 + "");
Tv t; // Tv 타입의 참조형 , 변수선언
t = new T(); // Tv 객체를 생성함
t = 0*100 대입/연결 tv 제품/ 객체구조
tv 객체 tv 리모콘
타입이 일치해야한다
tv 클래스 타입의 참조변수 t 선언하기!
계속 예시를 드는게 tv와 리모콘의 관계 인데 헷갈림
요약
Tv객체는 => Tv 리모콘으로 작동할수 있다. Tv 객체안에 변수 , 메서드가 포함된다 (이걸 멤버(구성요소)로 포현한다,)
Tv t1 = new Tv(); // 0 *100 참조변수
Tv t2 = new Tv(); //0 *200 참조변수
객체 생성시 서로 다른 주소값을 갖게된다 !
변수 하나의 값만 저장 가능
6-8
6-9.10
6-11
6-12,13
6-14~16
6- 17~19
6-20,21
6-22
6- 23
6 -24,25
6-26~29
6 - 30~31
6- 32~35
6-36,37
6-38~41