blues_log
Published 2023. 4. 13. 19:52
2023-04-13 TIL (Java : 객체지향) TIL&WIL

오늘 배운 내용

  • Java : 객체 지향 프로그래밍 개요, 클래스와 인스턴스, 클래스 멤버와 인스턴스 멤버, 유효범위(전역변수, 지역변수)
  • SQL : group by, order by

 


새로 알게된 내용

 

1. 클래스(class)와 인스턴스(instance)

  • 클래스는 설계도, 인스턴스는 설계도로 만들어진 제품 정도로 이해하면 쉬움 !
  • 클래스와 인스턴스를 사용하게 되면 코드의 중복을 제거하고 코드의 수정이 용이해진다.

 

2. 클래스 멤버와 인스턴스 멤버

  • 변수와 필드는 같은 뜻이라 생각 !
  • 클래스 변수는 모든 인스턴스가 공유하는 변수
  • 클래스에서 만들어진 인스턴스는 자연스럽게 클래스의 변수의 값을 갖는다.
  • 클래스 변수는 Static(정적)을 사용한다.
  • 클래스 변수의 용도는 다음과 같다.

        1. 인스턴스에 따라서 변하지 않는 값이 필요한 경우 ( final(상수)로 대체 )

        2. 인스턴스를 생성할 필요가 없는 값을 클래스에 저장하고 싶은 경우

        3. 값의 변경 사항을 모든 인스턴스가 공유해야 하는 경우

 

  • 클래스 메소드는 인스턴스 멤버에 접근할 수 없다.
  • 인스턴스 메소드는 클래스 멤버에 접근할 수 있다.

 

3. 유효범위(Scope), 전역변수, 지역변수

  • 전역변수는 클래스에서 변수를 선언하여 클래스 내의 모든 메소드 내에서 유효한 변수를 말한다.
  • 지역변수는 메소드 내에서 변수를 선언하여 그 메소드 내에서만 유효한 변수를 말한다.
  • 특정 메소드 내에서만 전역변수를 바꾸고 싶으면 지역변수를 새로 선언한다.
  • this. : 변수와 메소드 또는 생성자의 매개변수의 이름이 같을 때 인스턴스변수임을 명확히 하기 위해 사용함.
  • 즉, this. 는 메소드 내에서 전역변수를 호출하고 싶을 때 사용한다. (물론, 변수의 이름이 다르면 굳이 this.을 붙이지 않아도 됨)

 

4. SQL

  • group by 필드명 : 필드 내에서 같은 명칭을 그룹핑한다.
  • order by 필드명 : 필드 내의 자료값을 오름차순으로 정렬한다. ( 내림차순은 뒤에 desc 붙이기 !)
  • 최솟값은 min(필드명), 최댓값은 max(필드명), 평균은 avg(필드명)

느낀점

 java의 개념은 시간이 갈수록 당연하지만 더욱 어려워지는 것 같다. 단번에 이해하려고 하는 것은 당연하게 욕심이라는 마음으로 더욱 많은 시간투자와 반복학습을 해야겠다.