자바
-
[JAVA] NPE : 널포인트 ExceptionProgramming🧑💻/Java 2023. 3. 16. 22:09
Null Point Exception이 뭔데?자바는 null이라고 부르는 특별한 타입의 값을 허용하는데, null은 참조변수가 아무값도 참조하고 있지 않은 상태를 나타낸다.String a = null;String type과 같이 참조형의 변수에 값을 할당하면 할당된 값은 변수가 가리키고 있는 힙상의 메모리의 주소를 의미한다. 따라서 null이 할당되게 되면 해당 참조 변수는 실제로는 아무곳도 가리키지 않는 상태로 값이 없는 상태가 된다. 이 Null 값은 NullPointerException을 터뜨려서 자바 개발자들를 괴롭히는 골치 아픈 녀석으로 주의하지 않으면 자주 만나게 된다. NullPointerException은 프로그램이 실행중에 null값인 변수에 접근을 시도하면 터지는 예외이다. Null 참..
-
[JAVA] finalProgramming🧑💻/Java 2022. 10. 25. 10:48
final final 변수 - 변수를 final로 선언시 클래스의 필드를 final로 설정하면 클래스를 통해 만들어진 객체의 해당 필드는 더이상 값의 변경이 불가능하다. 그래서 객체가 생성될 때 final로 선언된 필드의 값들을 모두 가지지 못하면 객체가 만들어진 이후 값을 부여할 방법이 없다. 따라서 객체 생성시 final로 선언된 필드 값들을 모두 가지고 있어야 객체의 생성이 가능하다. - final로 선언된 필드의 자료형이 참조형일 경우 final를 사용해 선언한 필드의 자료형이 참조형일 경우 객체가 생성된 이후 final 변수가 다른 객체를 가리키도록 할 수는 없지만 대상이 되는 객체를 내부적으로 변경이 가능하다. 예를 들어 final int[] a = arr 로 a가 arr를 가리키고 있으면 이..
-
[JAVA] data type : 원시형과 참조형의 차이Programming🧑💻/Java 2022. 9. 28. 23:10
- 참조형(Reference type) // String class로 "java"라는 문자열을 객체를 만든뒤 // language 변수는 만든 객체를 참조한다. String language = new String("java"); - 원시형(primitive type) // 변수 a에 값 1을 저장한다. int num = 100; 변수에 값을 지정할 때 변수를 지정 시 Stack 영역에 변수가 올라간다. 원시형 변수를 사용하면 Stack 상에서 변수가 값을 지니고 있다. "new" 키워드를 사용하여 클래스를 통해 객체를 만들면 Heap 영역에 생성한 객체에 대한 메모리가 할당되어 저장된다. 참조형 변수를 사용하면 원시형 변수가 Stack 상에 값을 가지고 있는 것과 달리 객체가 저장되어 있는 Heap의 메..