Final이란 무엇인가 정의 : 마지막의 , 변경이 될 수 없는 의미 설명서 final은 마지막의, 변경될 수 없는...이라는 의미의 제어자입니다. final을 사용할 수 있는 곳은.... 클래스, 메서드, 멤버변수, 지역변수... 거의 모든 대상에 사용할 수 있는데요. 각 대상에 따라 final이 붙었을 때 어떤 의미가 되는 지 잘이해하셔야합니다. 클래스 앞에 final이 붙으면... 확장될 수 없는 클래스가 되어서 다른 클래스의 조상이 될 수 없습니다. 즉, 상속계층도의 마지막이라는 의미죠. 메서드 앞에 final이 붙으면... 변경될 수 없는 메서드... 즉, 오버라이딩을 할 수 없는 메서드가 됩니다. 그래서 이와 같이... FinalTest클래스의 getMaxSize메서드에 제어자 final이 붙..
Static 이란 무엇인가 의미 : 클래스의 공통적인 의미 사용될 수 있는 곳 : 멤버변수 , 메서드 , 초기화 블록 멤버변수 앞에 Static이 붙으면 클래스변수가 되는 것이고 , 모든 인스턴스가 공유하게 됩니다. 그리고 Static이 붙은 변수나 메서드는 모두 클래스가 메모르에 로드될 때 자동적으로 생성되므로 인스턴스 생성없이 사용가능합니다. Static 메서드에서는 인스턴스 멤버를 사용할 수 없다는 점 다시한번 확인 바랍니다.
제어자란? 1. 클래스 , 변수 , 메서드의 선언부에 사용되어 부가적인 의미를 부여한다. 2. 제어자는 크게 접근 제어자와 그 외의 제어자로 나뉜다. 3. 하나의 대상에 여러 개의 제어자를 조합해서 사용할 수 있지만 , 접근제어자는 단 하나만 사용할 수 있다. 설명서 제어자는... 클래스나 변수, 메서드의 선언부에 사용되어 부가적인 의미를 부여하는 것을 말합니다. 명사 앞에 붙어서.. 명사를 수식하는 형용사하고 비슷하다고 볼 수 있습니다. modifier라는 이름 역시 변경하다라는 뜻의 동사 modify에서 나온 것으로... 어떤 대상의 성격을 바꿔주는 것이라고 이해하시면 됩니다. 제어자는 접근제어자와... 그 외의 제어자로 ... 크게 두 가지 부류로 나눌 수 있습니다. 접근제어자에는 public, p..
몇일 전 Inner 클래스를 공부하던 중 , 알게 된 점이 하나 있다. 다음 소스 코드를 보자. package Practice;class Practice_Inner { // Main문 public static void main(String[] args) {A.B a = new A().new B(); // Inner 클래스 B에 접근a.Print(); // B클래스 메서드 시행}}class A {class B {int iv = 100;void Print() {System.out.println(iv);}}}위 코드의 결과값을 보면 100이 나오는 것을 확인 할 수 있다. 만약 Inner클래스 부분이 Main문과 바뀐다면 어떻게 될 까 . 결과 값은 iv의 값을 찾지 못하고 컴파일의 결과값이 아무것도 나오지 ..
import문의 선언 – 선언예제 1. import문은 컴파일 시에 처리되므로 프로그램의 성능에 아무런 영향을 미치지 않는다. 2. 이름이 같은 클래스가 속한 두 패키지를 import할 때는 클래스 앞에 패키지명을 붙여줘야 한다. 설명서 import문은 컴파일 할 때 처리되는 문장이기 때문에 import문은 프로그램의 성능에 아무런 영향을 주지 않기 때문에 import문을 많이 사용한다던가... 클래스이름대신 별표를 사용한다고 해서 프로그램의 성능을 떨어뜨리지 않습니다. 그래서... import할 클래스의 이름을 일일이 적어주는 것보다... 편하게 별표(*)를 사용하는 것이 좋습니다. 그러나... 이 왼쪽의 코드를 오른쪽과 같이 할 수 없다는 것... 주의하시기 바랍니다. import문은 지정된 패키지에..
import문의 선언 1. import문은 패키지문과 클래스선언 사이에 선언한다. 설명서 import문은 패키지문과 클래스 선언 사이에 위치해야 하고요... package문과는 달리 import문은 여러 번 사용할 수 있습니다. 특정 패키지의 모든 클래스를 import할 때는 패키지명 다음에 별표‘*’를 적어주면 되고요. 특정 클래스 하나만을 import할 때는 패키지명과 클래스명을 적어주면 됩니다. 첫번째 import문은 java.text패키지의 SimpleDateFormat클래스 하나만을 import한 것이고... 두번째 import문은 java.util패키지의 모든 클래스를 import한 것입니다. 그래서 java.util패키지에 속한 Date클래스를 이렇게 패키지 이름없이 클래스 이름만으로 사용할..