힘든건 힘든거고 다시한번 JAVA
1. 객체지향 프로그래밍
- 객체란 데이터와 데이터를 처리하는 함수를 묶어놓은 한의 단위
- 가독성이 좋아지며 유지보수가 편리함.
- 하나의 설계도라고 생각하면 편하다. 다시말해 거푸집이라고 생각하는것이 편하다 .
- 거푸집에 쇳물이 필요하듯 main 매서드에서 클래스를 불러와서 사용해야 한다.
- 다시말해 Heap에 객체를 생성하고 그 주소값을 변수에 가지고 있는 것이 맞다.
- 솔직히 잘 모르겠다.쓰면서도헷갈리는 중이므로 더 고민하고 추가할예정이다.
2. 객체지향 프로그래밍 위치와 단어 그리고 특징
- 필드 : 클래스 내부에 선언 되며 해당 클래스의모든 메서드에서 접근이가능한 것.
→ 지정된 값이 아니라면 기본으로초기화가 진행되며, 객체가 생성될 때마다 각각의 객체마다 독립적인 메모리 공간에 할당. - 지역변수: 메서드나 블록내부에 선언되며 영역 내에서만 접근가능
→ 반드시 초기화(저장)되어야 하며, 당 변수가 선언된 블록이 실행될 때마다 스택(stack) 메모리에 할당되며, 블록이 종료되면 할당된 메모리가 해제된다 - 지역변수와 필드는 구분이 필요하다 .
int num = 23
for(i=0,i<num,i++){
i+=i
}
- 위와같은 식이 있다면 num은 for문에 변수로 쓰일수있다. 그러나 i는 for문을 넘어서 영향을 미치지 못하는 개념이다.
- 다시말해 필드라는 영역이 있는 것이고 그안에 지역이라는 영역이 있다는 것이다.
2. 객체지향 프로그래밍 생성자
- 생성자 : 객체를 생성할때 호출하는 것
- 생성자의 특징
- 생성자의 이름은 클래스의 이름과 대/소문자까지 완벽하게 동일해야 한다.
- 객체를 생성할 때 반드시 호출해야 한다.
- 일종의 메서드지만, 리턴 타입이 없고 리턴값은 주소값으로 고정되어 있다.
- 생성자를 하나도 선언하지 않으면, JVM이 매개변수가 없고, 내용이 없는 가장 기본 형태의 생성자를 하나 생성해 주기 때문에 생성자 선언 없이도 객체 생성은 가능하다.
- 객체를 생성하는 기능 뿐만 아니라, 객체 생성과 동시에 해야 할 일 (필드 초기화) 등을 진행할 수 있다.
맞다. 여기도 잘 이해가 안간다. ㅇ.ㅇ망했다. 헤헷
2. THIS
- this는 객체를 참고하는 것으로 기본적으로 달려 있는 경우가 있으나 생략하는 경우가 많다.
- 클래스를 제작하면, this라는 숨겨진 필드를 가지게 되는데 생성되는 객체의 주소값을 받게 된다.
'PlayData 백엔드 부트캠프 정리' 카테고리의 다른 글
PlayData 백엔드 부트캠프 Start 8일차 (0) | 2024.08.19 |
---|---|
PlayData 백엔드 부트캠프 Start 7일차 (0) | 2024.08.17 |
PlayData 백엔드 부트캠프 Start 5일차 (0) | 2024.08.14 |
PlayData 백엔드 부트캠프 Start 4일차 (1) | 2024.08.12 |
PlayData 백엔드 부트캠프 Start 2일차 (0) | 2024.08.09 |