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 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 | package com.test; import java.util.Calendar; public class final { public static void main(String[] args) { //static 키워드 //1. (멤버)변수 : 지역변수x, 정적(공용)변수 //2. 메소드 //public(private) 키워드 //1. 변수 : 지역변수x //2. 메소드 //3. 클래스 //final 키워드 //1. 변수 : 지역변수o(붙임) *** //2. 메소드 //3. 클래스 //1. final 변수(= 상수) // : 값을 변경시킬 수 없다 //ex) final int n = 10; //n=20; 이게 안된다는 뜻 System.out.println(n); //주의 : 선언과 초기화를 동시에(*****) //final int n2; //n2 = 10; //System.out.println(n2); //데이터 상수 : 의미가 없음(의미를 표현할 수 없음 -> 가독성 낮음) System.out.println(3.14); //파이값 System.out.println(2*5+5/7); // double pi = 3.14; // System.out.println(20 * pi); int weight = 70; System.out.println(weight); ///상수는 의미없음 - > 의미 부여 하기 위해 -> 변수(이름) -> 수정 가능! -> 수정 불가능 -> final 상수 -> 의미있는 상수 //가독성 -> 상수명은 모두 대문자 final double pi = 3.14; //pi = 5.01; 이렇게 파이값이 바뀌면 안되잖아? //PI = 5.12; //Calendar.YEAR = 2; System.out.println(1); System.out.println(Calendar.YEAR); } } //상속시에 발생., class FinalA { //멤버., //., //2. final 메소드 // - 상속받은 자식 클래스가 재정의할 수 없는 메소드 // - 안정성 문제 public void test() { System.out.println("부모 메소드"); } } class FinalB extends FinalA { //멤버., //., //메소드 오버라이딩 public void test() { System.out.println("자식 오버라이딩"); } } //3. final 클래스 // - 프로그램 안정성 문제 // - 처음부터 상속을 고려하지 않은 클래스 설계 // - 최종 클래스, 봉인 클래스., final class FinalC { //멤버., //., } //class finalD extends FinalC { //} | cs |
'WEB > JAVA' 카테고리의 다른 글
비디오마을 (0) | 2015.09.10 |
---|---|
OVERRIDE(오버로딩) (0) | 2015.05.22 |
ABSTRACT CLASS(추상클래스)2 (0) | 2015.05.22 |
ABSTRACT CLASS(추상클래스)1 (0) | 2015.05.22 |
OBJECT CLASS (0) | 2015.05.22 |