blues_log

오늘 배운 내용

  • Java : overriding, overloading, 클래스패스(classpath), 패키지(package)

새로 알게된 내용

 

 1. 오버라이딩(overriding)

  • 오버라이딩이란 부모 클래스가 갖고있는 메소드를 자식 클래스에서 재정의하면 메소드가 호출되었을 때 재정의된 메소드가 호출되는 것을 말한다.
  • 오버라이딩의 조건은 다음과 같다.
1. 부모 클래스 안의 메소드의 형식(리턴데이터타입)과 자식 클래스 안의 메소드의 형식(리턴데이터타입)이 일치해야 함.

2. 메소드의 매개변수도 같아야 함.

3. 메소드의 이름이 같아야 함.

 

2. 오버로딩(overloading)

  • 오버로딩이란 동일한 이름의 메소드를 여러개 정의하는 것이다.
  • java는 메소드 이름은 같지만 매개변수가 다르면 다른 메소드로 인식한다.
  • 오버로딩은 리턴 데이터 값이 다르면 에러가 발생한다.

 

3. 클래스패스(classpath)

  • 클래스패스는 클래스나 패키지를 찾을 때 기준이 되는 경로를 말한다.
  • 클래스패스는 자바를 실행할 때 클래스의 위치를 지정하는 역할을 한다.
  • 소스코드(.java)를 컴파일하면 바이트코드(.class)로 변환되고 JVM이 바이트코드로 된 파일을 실행하려면 파일을 찾아야 하는데 이 바이트코드까지의 경로를 클래스패스라 한다.
  • 매번 지정하기 어려운 경우는 '환경변수'라는 개념을 이용한다. (자바에서는 'CLASSPATH'라는 환경변수 이용 !)

 

4. 패키지

  • 하나의 클래스 안에서 같은 이름의 클래스들을 사용하기 위한 방법

느낀점

 

 객체지향 파트로 넘어오면서 난이도가 많이 올라가서 조금 힘든 느낌이 든다. 하지만 포기하지 않으면 언젠가는 모든 내용을 다 이해할 수 있을 것이라 생각한다. 그러니까 포기하지말고 끝까지 완강하고 복습도 철저하게 하자 !!