2021-05-31
기본 자료형 : int, long, float 등등
참조 자료형 : String, Data, Student 등등(만들수 있는것)
참조 자료형 같은 경우에는 해당 변수에 대해 값을 생성해 주어야함
-> String 경우에는 예외
Hojin 이라는 값에 국어와 수학 점수를 담는다고 가정을 할떄
나중에 만약 subject가 많아지게 된다면 배열을 사용하게 된다.
클래스 외부에서 클래스의 멤버 변수, 메서드, 생성자를 사용할 수 있는지 여부를 지정하는 키워드'
-> 반드시 get, set함수를 사용 해야함
쉽게 말하면 보안이라고 생각해도 될듯
private 으로 선언된 멤버변수를 사용 하고 싶을떄에 get(), set()메서드를 사용
--> 멤버 변수의 오류를 잡기가 쉽다(private를 하는것이)
꼭 필요한 정보와 기능만 외부에 오픈한다는 개념
대부분의 멤버 변수와 메서드를 감추고 외부에 통합된 인터페이스만은 제공하여 일관된 기능을 구현 하게 함.
css나 html 같은 것은 private로 놓고 정보값들을 public로 사용한다라고 이해했음
생성자에서 또 다른 생성자를 호출 할떄 사용
인스턴스 자신의 메모리를 가르킴
this가 Person을 가르키기 떄문에 초기화가 이름없음, 1로 된다.
매개 변수로 객체가 전달되는 경우에 발생한다.
14강 코딩에 대한 기본 내용
James와 Tomas는 각각 버스와 지하철을 타고 학교에 갑니다.
James는 5000원을 가지고 있었고, 100번 버스를 타면서 1000원을 지불합니다.
Tomas는 10000원을 가지고 있었고, 초록색 지하철을 타면서 1200원을 지불합니다.
-> 보통 new생성자 함수를 받게되면 변수를 적는데 bus는 버스의 이름으로 이해할수 있지만
Bus는 왜 들어가는지를 몰랐음
--> 이유 : Bus 라는 class를 표시해준거임
--> Student class에는 Bus라는 class가 없기 떄문에 다른 class에 있는 Bus class를 불러 온다는 의미라고 생각하면됨.
만약 Bus라는 class를 Student에 저장하지 않고 따로 하게 된다면
StudentTest에서 또 Bus의 생성자 함수를 받아야 하기떄문에
공통된 부분이 있으면 한곳에 쓰는 것이 좋다.
--> 시간을 절약할수 있음
--> 나중에 수정하기가 편함
--> 오류가 적음
-- 그림으로 설명하면 이런 느낌
==> 개인적으로 이떄까지 배운 모든걸 이 강의하나에서 볼수 있다고 생각 그러니 자주자주 복습해볼것!!
앞의 예제에서 Edward는 지각을 해서 택시를 타야 했습니다.
20000원을 가지고 있었는데 10000원을 택시비로 사용했습니다.
택시는 '잘나간다 운수' 회사 택시를 탔습니다.
여러 인스턴스 공유하는 기준 값이 필요한 경우
EX :
1. 학생 마다 새로운 학번 생성
2. 카드 발급떄마다 새로운 번호를 부여
3. 사원이 입사할때마다 새로운 사번 부여
인스턴스가 생성될떄 만들어 지는 변수가 아님.
인스턴스 생성과 상관 없이 사용 가능하므로 클래스 이름으로 직접 참조
ctrl + space를 자주 사용하자 제발!!! 익숙해지자!
static 메서드는 인스턴스 생성과 무관하게 클래스 이름으로 호출 가능
-> 기준값이기 때문에 다른 new 생성자 함수를 필요로 하지 않음.
int i 의 값 같은 경우에는 문제가 없다.
--> 실행 될떄만 사용되고 실행후에는 없어지는 값이기 떄문에
하지만 employeeName = "Lee"; 는 문제가 있다.
값이 getSerialNum 이라는 메소드가 불러지기 전에 Name 이라는 값이 없을수도 있기 떄문에
--> 즉 일반 변수를 사용 할수가 없다.
--> 지역변수는 괜찮음.
==> 잘 이해가 안되는거 같기도함;; 궁금증이 생길떄 확인하면좋을듯.
음.. 뭔가 알꺼 같으면서도 모르는거 같은 느낌이 듬;;
내가 짜놓은 코딩을 보면서 새로운 코딩을 짤수는 있다고는 생각하지만 보지 않고 짜는것은 자신이 없음...
좀더 공부해보고 나중에 클론코딩을 하지 않고 처음부터 혼자서 프로그래밍을 해보고 싶음
복습 필수라고 생각