한정자
- 변수나 클래스의 선언에 접두어로 사용하여 의미를 부여한다.
- 접근한정자와 그 외로 나눌수 있다.
- public, protected, private 와
- static, final, abstract에 대해서 설명한다.
- 2개 이상을 한번에 사용 할 수 있지만 상반된 기능을 가지는 것은 불가능하다.
- static : 클래스의, 클래스에 속한, 공통의->클래스 메모리에 로드될 때 생성 - final : 광범위하게 쓰임, 확장, 변경이 불가능
- abstract : 추상의, 미완성의
클래스의 경우 객체 생성 불가능(상속 가능)
메소드의 경우 헤더는 있는데 내용물이 없다.{} 대신에 ;로 끝난다.
- 접근한정자의 접근 범위
public > protected > default(생략했을때) > private
public : 모두 접근이 가능
protected : 같은 패키지 or 자손(같은 패키지가 아니어도 상관없다)만 접근
default : 같은 패키지에서만 접근
private : 같은 클래스에서만 접근(접근을 위한 getter/setter 메소드 생성)
- 캡슐화 : 내용물을 감춰 외부로부터 보호
- 생성자 메소드에는 접근한정자만 올 수 있다. 특별한 경우가 아니면 클래스의 접근한정자와 동일하다.
- 생성자의 접근한정자 ☆
-한정자의 조합
모든 멤버가 static이면 static 클래스라고 부른다.(class앞에는 올 수 없다)
static, abstract - 같이 x
final , abstract - 같이 x
abstract메소드 private접근한정자 x
private, final - 필요 x
- 변수나 클래스의 선언에 접두어로 사용하여 의미를 부여한다.
- 접근한정자와 그 외로 나눌수 있다.
- public, protected, private 와
- static, final, abstract에 대해서 설명한다.
- 2개 이상을 한번에 사용 할 수 있지만 상반된 기능을 가지는 것은 불가능하다.
- static : 클래스의, 클래스에 속한, 공통의->클래스 메모리에 로드될 때 생성 - final : 광범위하게 쓰임, 확장, 변경이 불가능
- abstract : 추상의, 미완성의
클래스의 경우 객체 생성 불가능(상속 가능)
메소드의 경우 헤더는 있는데 내용물이 없다.{} 대신에 ;로 끝난다.
- 접근한정자의 접근 범위
public > protected > default(생략했을때) > private
public : 모두 접근이 가능
protected : 같은 패키지 or 자손(같은 패키지가 아니어도 상관없다)만 접근
default : 같은 패키지에서만 접근
private : 같은 클래스에서만 접근(접근을 위한 getter/setter 메소드 생성)
- 캡슐화 : 내용물을 감춰 외부로부터 보호
- 생성자 메소드에는 접근한정자만 올 수 있다. 특별한 경우가 아니면 클래스의 접근한정자와 동일하다.
- 생성자의 접근한정자 ☆
-한정자의 조합
모든 멤버가 static이면 static 클래스라고 부른다.(class앞에는 올 수 없다)
static, abstract - 같이 x
final , abstract - 같이 x
abstract메소드 private접근한정자 x
private, final - 필요 x
다형성☆
- 조상의 참조변수로 자손의 타입들을 다룰수있는 것
- 선언방식에 따라 참조할수 있는 변수형이 달라진다.
- 자손에서 오바라이딩된 메소드가 존재하면 그것을 호출한다.
- 멤버변수와 메소드에대한 규칙이 다르다.
- 자손->조상(UpCasting) 형변환 생략가능
- 조상->자손(DownCasting) 생략불가능
- 자손은 조상으로부터 물려받은것이므로 조상을 대신 할 수 있다.
- 여러개의 오버로딩을 해야 할때 조상의 매개형으로 하나로 줄일수 있다.(공통분모지정)
- 추상(abstract)클래스가 보통 공통분모 역할(Interface도 있지만 여러 가지 일을 더 한다)
- 조상의 참조변수로 자손의 타입들을 다룰수있는 것
- 선언방식에 따라 참조할수 있는 변수형이 달라진다.
- 자손에서 오바라이딩된 메소드가 존재하면 그것을 호출한다.
- 멤버변수와 메소드에대한 규칙이 다르다.
- 자손->조상(UpCasting) 형변환 생략가능
- 조상->자손(DownCasting) 생략불가능
- 자손은 조상으로부터 물려받은것이므로 조상을 대신 할 수 있다.
- 여러개의 오버로딩을 해야 할때 조상의 매개형으로 하나로 줄일수 있다.(공통분모지정)
- 추상(abstract)클래스가 보통 공통분모 역할(Interface도 있지만 여러 가지 일을 더 한다)
추상(abstract)클래스
- 미완성메소드가 여러개 존재가능하다.
- 메소드의 완성을 자식에게 오버라이딩으로 맡긴다.
- 추상클래스를 상속하고 추상메소드를 전부 완성하지 않으면 추상클래스가 되어야한다.
- 다형성을 위하여 사용한다.
- 미완성메소드가 여러개 존재가능하다.
- 메소드의 완성을 자식에게 오버라이딩으로 맡긴다.
- 추상클래스를 상속하고 추상메소드를 전부 완성하지 않으면 추상클래스가 되어야한다.
- 다형성을 위하여 사용한다.
댓글 없음:
댓글 쓰기