목록2023/09/13 (4)
Rootable의 개발일기
📌 Wrapper class란 자바의 기본 자료형을 객체로 다루기 위해 사용하는 클래스를 wrapper class라 한다. 자바의 모든 기본 자료형마다 래퍼 클래스가 존재한다. 이러한 클래스를 포장 객체라고 하는데, 그 이유는 기본 타입의 값을 내부에 두고 포장하기 때문이다. 래퍼 클래스로 포장하고 있는 기본 타입 값은 외부에서 변경할 수 없다. 만약 값을 변경하고 싶다면 새로운 포장 객체를 만들어야 한다. 📌 종류 기본 타입(primitive type) 래퍼 클래스(wrapper class) byte Byte char Charater int Integer float Float double Double boolean Boolean long Long short Short 래퍼 클래스는 java.lang 패..
📌 추상 클래스란 추상 클래스는 클래스 내 추상 메서드가 하나 이상 포함되거나 abstract로 선언된 클래스를 말한다. 추상 메서드는 자손 클래스에서 완성해야 하는 메서드로 확장, 이용의 개념으로 볼 수 있다. 그래서 추상 클래스는 미완성 설계도라고도 표현한다. 상속을 위한 클래스이므로, 객체를 생성할 수 없다. 추상 클래스는 자손 클래스에서의 확장을 전제로 한 미완성 설계도 📌 인터페이스란 추상 메서드 또는 상수만으로 구성된 클래스(Java 8부터는 static 메서드와 default 메서드도 포함)로, 마찬가지로 추상 메서드는 자손(구현) 클래스에서 완성해야 하는 메서드다. 그래서 인터페이스는 기본 설계도라고 할 수 있으며, 중요 특징으로 다중 상속(구현)이 가능하다. 인터페이스는 다중 상속이 ..
📌 final 변수 final 키워드가 붙은 변수는 초기화 후 변경할 수 없다. final int a = 10; a = 50; //compile error 📌 final arguments (인자) 인자를 선언할 때 final 키워드를 붙일 수 있다. final로 선언된 인자는 메서드 내에서 변경할 수 없고, 읽기만 가능하다. public void method(final String arg) { System.out.println(arg); //arg = "not changing"; compile error } 📌 final class 클래스에 final을 붙이면 다른 클래스가 상속할 수 없는 클래스가 된다. final class A { ... } class B extends A { //compile err..
Java 7에 추가된 구문으로, try-catch-finally 문을 통한 자원 해제 코드가 길어지고 지저분해졌던 점을 개선했다. 자바에서 외부자원에 접근하는 경우, 외부자원을 사용한 뒤 반드시 닫아줘야 한다. try-catch-finally문은 아래와 같이 해제한다. FileOutputStream out = null;try { out = new FileOutputStream("exFile.txt"); ...} catch (FileNotFoundException e) { e.printStackTrace();} finally { if (out != null) { try { out.close(); } catch (IOException e) {..