본문 바로가기
  • 실행력이 모든걸 결정한다
Spring 사전 준비/JAVA

[JAVA 간단정리 3] 패키지/접근제한자/static/상속/추상클래스

by 김코더 김주역 2020. 11. 13.
반응형

패키지

다른 패키지의 클래스를 import 하는 법
import 패키지명.클래스명;

패키지의 모든 클래스를 import 하는 법
import 패키지명.*;

 

접근제한자

public : 접근 제한이 없음.
protected : 동일 패키지에 있거나 상속받은 클래스일 경우에만 사용 가능.
default : 동일 패키지에서만 사용 가능.
private : 자신의 클래스에서만 사용 가능.

 

Static

여러 객체가 하나의 변수나 메소드를 공유하게 하는 것.
static을 설정하려면 접근제한자 뒤에 static을 작성하면 된다.
그리고 static 변수는 객체생성과는 상관없이 클래스와 함께 존재하게 된다. (DATA영역)

static 대상을 사용 하기 위해, 객체 생성 필요없이 클래스를 import만 해서 그대로 쓰면 된다.

import 클래스명;
클래스명.변수;

 

final

변경을 막는 키워드
ex) public static final double PI = 3.141;

 

상속

객체의 데이터와 메소드를 상속 받는다. 부모 클래스의 생성자가 가장 먼저 호출된다.
다중상속 지원x.
오버라이드 할 경우 자식 클래스의 우선 순위가 더 높음.
※Override : 부모 클래스의 메소드를 자식 클래스에서 재정의하는 것.
Eclipse 상에서 Override 단축키는 Ctrl+Space.

public class ChildClass extends ParentClass{

}

<추가 키워드>
부모 클래스 = super
자신 클래스 = this

 

추상클래스

부모 클래스에서 추상적으로 정의만 해주는 메소드이며, 자식 클래스에서는 이 메소드를 반드시 재정의 해줘야 한다.
재정의 하지 않고 넘어가면 에러를 발생시킨다.
추상 메소드를 하나라도 가지는 클래스는 추상 클래스가 되며, 추상 메소드/클래스는 접근 제한자 뒤에 abstract 키워드를 작성해줘야 한다.


public abstract class AbsClass {
	public abstract void please_override(); //구현은 하지않는다.
}

추상클래스 객체를 생성할 때 그 객체안의 추상 메소드들을 재정의 해야 한다.
AbsClass absClass = new Absclass(){
    public void please_override(){
         //오버라이딩
    }
}

반응형

댓글