[JAVA 파이널 클래스,메소드]자바 final class, final method
1. 화이널 클래스(final class)
자바에서는 모든 클래스는 하나이상의 하위 클래스를 가질 수 있으나, 상위 클래스는 하나만을 가질 수 있음.
단, final클래스는 하위 클래스를 가지지 못함.
마지막 하위 클래스, 하위 클래스를 만들수 없다.(더 이상 상속 될 수 없다.)
단, final클래스는 하위 클래스를 가지지 못함.
마지막 하위 클래스, 하위 클래스를 만들수 없다.(더 이상 상속 될 수 없다.)
final class A
{ ...
}
{ ...
}
class B extends B // 오류
어떤 클래스가 더 이상 추가될 기능이 없이 완벽하게 만들어 졌다면 final class로 선언
재정의 하는것이 바람직하지 않거나 안전하지 않은 경우 사용될 수 있다.
예)java.lang.String
재정의 하는것이 바람직하지 않거나 안전하지 않은 경우 사용될 수 있다.
예)java.lang.String
2. 화이널 메소드(final method)
마지막으로 재정의된 메소드, 더 이상 재정의 안된다.
더 이상 구현될 필요가 없거나, 매우 중요한 메소드 이므로 하위 클래스에 의해 재정의 되면 안 된다는 의미로 사용된다.
더 이상 구현될 필요가 없거나, 매우 중요한 메소드 이므로 하위 클래스에 의해 재정의 되면 안 된다는 의미로 사용된다.
class A
{
final void m()
...
}
class B extends A
{
void m() // 오류
{
final void m()
...
}
class B extends A
{
void m() // 오류
static 메서드(클래스 메소드)는 자동으로 final 메서드가 됨(overriding불가능)
[개강확정강좌]오라클자바커뮤니티에서 운영하는 개발자 전문교육 ,개인80%환급(www.onjprogramming.co.kr)
[주간]
[11/4]Spring3.X, MyBatis, Hibernate실무과정
[11/6]SQL초보에서실전전문가까지
[평일야간]
[10/29]C#,ASP.NET마스터
[11/5]iPhone 하이브리드 앱 개발 실무과정
[11/7]JAVA&WEB프레임워크실무과정
[11/8]Spring3.X, MyBatis, Hibernate실무과정
[주말]
[11/2]C#,ASP.NET마스터
[11/2]Spring3.X, MyBatis, Hibernate실무과정
[11/2]JAVA&WEB프레임워크실무과정
[11/9]안드로이드개발자과정
[주간]
[11/4]Spring3.X, MyBatis, Hibernate실무과정
[11/6]SQL초보에서실전전문가까지
[평일야간]
[10/29]C#,ASP.NET마스터
[11/5]iPhone 하이브리드 앱 개발 실무과정
[11/7]JAVA&WEB프레임워크실무과정
[11/8]Spring3.X, MyBatis, Hibernate실무과정
[주말]
[11/2]C#,ASP.NET마스터
[11/2]Spring3.X, MyBatis, Hibernate실무과정
[11/2]JAVA&WEB프레임워크실무과정
[11/9]안드로이드개발자과정
[기타 다른 강좌는 아래 카테고리 클릭하세요]
댓글 없음:
댓글 쓰기