Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- 자바
- gradle
- @Spring
- 전치행렬 #C
- createQuery
- 10844
- Spring
- 자료구조
- @NotEmpty
- NamedParameterNotBound
- 백준
- junit
- BubbleSorting
- java
- Linux
- setParameter
- C
- springboot
- 쉬운 계단 수
- pscp
- designpattern
- decorator
- 데코레이터패턴
- 숫자야구
- @ModelAttribute
- 여러인수
- 점세개
- mycp
- 디자인패턴
- 10951
Archives
- Today
- Total
...
[JAVA] Final 이란? 본문
'Final'
초기값이 저장되면 최종적인 값이 되어 프로그램 실행 도중 어떠한 변경도 할 수 없게 됨.
Final의 사용법
[1] final 필드 이용하기
Final int number = 0;
[2] final 객체 이용하기
객체 변수에 final을 선언하면 그 변수에 다른 참조 값 지정 불가능
한 번 생성된 final 객체는 같은 타입으로 재생성 불가능
객체 자체는 변경 불가능 , 객체 내부 변수는 변경 가능!
class Person{
int age = -1;
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
public class Final_ex {
public static void main(String[] args) {
final Person person = new Person();
//person = new Person(); //객체를 한번 생성했다면 재생성 불가능
person.setAge(9); //클래스의 필드는 변경가능
}
}
[3] final 클래스 이용하기
클래스에 final을 사용하면 더이상 그 클래스를 상속할 수 없음
//final 클래스
final class Person{
String name = "xxx";
}
//상속 불가능
class Girl extends Person{
}
[3] final 메서드 이용하기
클래스 내의 final 메서드를 사용하게 되면 상속받은 클래스는 그 메서드를 오버라이드 할 수 없음.
즉, 자신의 메서드를 변경하지 못하도록 하는 기능을 함.
class Person{
String name = "xxx";
public final void print() {
System.out.println("이름은 :"+name+" 입니다.");
}
}
class Girl extends Person{
String name = "xxx_G";
//메서드 오버라이드 불가능
public void print() {
}
}
'언어 > JAVA 자바' 카테고리의 다른 글
[JAVA]객체지향 개념을 고려한 숫자야구 게임의 구현 (0) | 2022.06.08 |
---|---|
JAVA 파라미터에 오는 점 세개 문법 ! (0) | 2022.04.16 |
JAVA 접근 제한자 정리 (0) | 2022.04.14 |
[JAVA] Static이란? (0) | 2022.02.28 |
[JAVA] Scanner의 next() / nextLine() 차이점 (0) | 2022.02.18 |
Comments