PlayData 백엔드 부트캠프 정리

PlayData 백엔드 부트캠프 Start 6일차

효건 2024. 8. 15. 15:39

다시한번 시~~~작!!

 

힘든건 힘든거고 다시한번 JAVA 

 

 


 

1. 객체지향 프로그래밍

  • 객체란 데이터와 데이터를 처리하는 함수를 묶어놓은 한의 단위 
  • 가독성이 좋아지며 유지보수가 편리함. 
  • 하나의 설계도라고 생각하면 편하다. 다시말해  거푸집이라고 생각하는것이 편하다 .

어차피 써야할 코드를 미리 써놓고 규칙을 정하게 한 후에 미래에 내가 간단하게 일하는 것이라고 생각하는게 편하다 .

  • 거푸집에 쇳물이 필요하듯 main 매서드에서 클래스를 불러와서 사용해야 한다.
  • 다시말해 Heap에 객체를 생성하고 그 주소값을 변수에 가지고 있는 것이 맞다.
  • 솔직히 잘 모르겠다.쓰면서도헷갈리는 중이므로 더 고민하고 추가할예정이다.  

2. 객체지향 프로그래밍 위치와 단어 그리고 특징

  • 필드 : 클래스 내부에 선언 되며 해당 클래스의모든 메서드에서 접근이가능한 것.
    → 지정된 값이 아니라면 기본으로초기화가 진행되며, 객체가 생성될 때마다 각각의 객체마다 독립적인 메모리 공간에 할당.
  • 지역변수: 메서드나 블록내부에 선언되며 영역 내에서만 접근가능
    → 반드시 초기화(저장)되어야 하며, 당 변수가 선언된 블록이 실행될 때마다 스택(stack) 메모리에 할당되며, 블록이 종료되면 할당된 메모리가 해제된다
  •  지역변수와 필드는 구분이 필요하다 . 
int num = 23
for(i=0,i<num,i++){
i+=i
}
  • 위와같은 식이 있다면 num은 for문에 변수로 쓰일수있다. 그러나 i는 for문을 넘어서 영향을 미치지 못하는 개념이다.
  • 다시말해 필드라는 영역이 있는 것이고 그안에 지역이라는 영역이 있다는 것이다. 

2. 객체지향 프로그래밍 생성자

  • 생성자 : 객체를 생성할때 호출하는 것 
  • 생성자의 특징 
    1. 생성자의 이름은 클래스의 이름과 대/소문자까지 완벽하게 동일해야 한다.
    2. 객체를 생성할 때 반드시 호출해야 한다.
    3. 일종의 메서드지만, 리턴 타입이 없고 리턴값은 주소값으로 고정되어 있다.
    4. 생성자를 하나도 선언하지 않으면, JVM이 매개변수가 없고, 내용이 없는 가장 기본 형태의 생성자를 하나 생성해 주기 때문에 생성자 선언 없이도 객체 생성은 가능하다.
    5. 객체를 생성하는 기능 뿐만 아니라, 객체 생성과 동시에 해야 할 일 (필드 초기화) 등을 진행할 수 있다.

맞다. 여기도 잘 이해가 안간다. ㅇ.ㅇ망했다. 헤헷

 

2. THIS

  • this는 객체를 참고하는 것으로 기본적으로 달려 있는 경우가 있으나 생략하는 경우가 많다.
  • 클래스를 제작하면, this라는 숨겨진 필드를 가지게 되는데 생성되는 객체의 주소값을 받게 된다.
  •