Java/이론&문법
-
Mutable & Immutable 객체Java/이론&문법 2023. 9. 15. 21:45
Mutable Object 생성된 이후에 수정이 가능하며, 이미 존재하는 객체에 재할당이 가능 값을 변경할 수 있는 메소드 제공 Heap 영역에 생성된 객체를 변경할 수 있다. List, ArrayList, HashMap, StringBuilder, StringBuffer... Immuatable Object String, Boolean, Integer, Float, Long 등 외부에서 객체의 데이터를 변경할 수 없다(heap 영역에서 바꿀 수 없다.) 새 객체를 만들어 reference 값을 주는 재할당만 가능 신뢰도 보장, 멀티 스레드 환경에서 안전함. 대신 객체의 값이 할당될 때마다 새로운 객체 필요(메모리 많이 잡아먹음) 불변객체로 만드는 방법 Integer, String 등의 API : fin..
-
AnnotationJava/이론&문법 2023. 9. 15. 19:02
정의 클래스, 메소드, 변수등의 선언시에 @를 사용하는 것 JDK 5부터 등장, 메타데이터라고 불리기도 한다. 컴파일러에게 정보를 알려주거나, 컴파일할 때와 설치시의 작업을 지정하거나, 실행할 때 별도의 처리가 필요할 때 사용 종류(JDK 6 기준) @Override 해당 메소드가 부모 클래스에 있는 메소드를 Override했다는 것을 명시적으로 선언 이 메소드는 Override 된 것이니까 무언가 잘못 코딩되어 있다면 컴파일러에게 알려달라고 지정해주는 것과 같다. 즉, 개발자가 제대로 Override 한 것인지 컴파일 시 확인이 가능하다. @Deprecated 미리 만들어져 있는 클래스나 메소드가 더 이상 사용되지 않는 경우가 있는데, 컴파일러에게 이 클래스 / 메소드는 더 이상 사용하지 않으며, 사용..
-
Nested ClassJava/이론&문법 2023. 9. 15. 17:00
개념 클래스 안에 클래스가 들어갈 수 있다. 이러한 클래스를 Nested Class라고 한다. 한 곳에서만 사용되는 클래스를 논리적으로 묶어서 처리할 필요가 있을 때 캡슐화가 필요할 때(내부 구현을 감추고 싶을 때) 소스의 가독성과 유지보수성을 높이고 싶을 때 종류 Static Nested class (static 키워드가 붙음) inner class (static 없음) Local inner class Anonymous inner class : 내부 익명 클래스 예제 : Static Nested Class 내부 클래스는 외부 클래스의 private 변수도 접근이 가능하지만, static nested class를 그렇게는 사용할 수 없다. static 아닌 변수를 static class에서 사용할 수 없..
-
Java의 ExceptionJava/이론&문법 2023. 9. 15. 02:31
예외란? An exception is an event, which occurs during the execution of a program, that disrupts the normal flow of the program's instructions (Oracle Docs) 예외란 프로그램의 실행동안 발생되는 것으로, 프로그램 명령어들의 정상적인 흐름을 방해하는 것을 의미합니다. Try - Catch - Finally 예외가 발생한 경우 try 내에서 발생한 이후의 문장들은 실행되지 않음 catch 내에 있는 문장은 실행되고, try-catch 문 이후의 내용이 실행 예외가 발생하지 않은 경우 try 문이 쭉 실행되고, catch 내에 있는 문장은 실행되지 않음. finally는 예외 발생 여부와 상관없이..
-
-
-
-