It's going to be one day 🍀

안녕하세요! 매일 매일 공부하려고 노력하는 백엔드 개발자 지망생의 공부 흔적입니다.

분류 전체보기 134

[Java 교육] 제한된 타입/와일드카드 타입/제네릭 상속, 구현

[공부 내용 정리] 제한된 타입 파라미터 () 타입 파라미터에 구체적인 타입을 제한하는 기능 public **** 리턴타입 메소드(매개변수, ...) { } → 제한된 타입 파라미터를 선언하려면 타입 파라미터 뒤에 extends 키워드가 붙고 상위 타입을 명시하면 됨. package chapter10; public class Util { public static int compare(T t1, T t2) { double value1 = t1.doubleValue(); double value2 = t2.doubleValue(); // compare : value1이 작다면 -1 리턴, value1이 크다면 1 리턴, 같다면 0 리턴. return Double.compare(value1, value2); }..

[Java 교육] 자동 리소스 닫기/중간정리/제네릭

[공부 내용 정리] 자동 리소스 닫기(try-with-resource) 예외 발생 여부와 상관없이 리소스 객체의 close() 메소드를 호출해서 안전하게 리소스를 닫아줌. Autocloseable 인터페이스의 close() 메소드를 직접 구현하는 FileInputStream 클래스 public class FileInputStream implements AutoCloseable { private String file; public FileInputStream(String file) { this.file = file; } public void read() { System.out.println(file + " 을 읽습니다"); } @Override public void close() throws Excepti..

[Java 교육] 사용자 정의 예외/트랜잭션

[공부 내용 정리] 사용자 정의 예외 클래스의 목적 package chapter09; public class DBService { public static void main(String[] args) { // 필수값 - Profile : (이름, 나이), 취미, 좋아하는 음식 ... try { save("name", "age", "hobby", "food"); } catch (NotExistsNameException e) { // logging } } public static void save(String name, String age, String hobby, String food) throws NotExistsNameException{ // DB save SQLException 예외 -> 필수값을 입..

[Java 교육] 예외처리/trycatch&finally

[공부 내용 정리] 예외처리 : 응용프로그램 에러 상황을 처리하는 것 에러 상황에서 프로그램이 강제 종료가 되는게 아니라, 에러 상황을 처리함으로써 프로그램이 정상 실행 상태가 유지되도록 할 수 있음. 예외 클래스의 계층 구조 일반 예외 (Exception) : (=컴파일러 체크 예외) : 컴파일하는 과정에서 예외 처리 코드가 필요한지 검사하고 만약 예외 처리 코드가 없다면 컴파일 오류 발생. → 사용자의 실수와 같은 외적인 요인에 의해 발생하는 예외 실행 예외 (Runtime Exception) : 컴파일하는 과정에서 예외 처리 코드를 검사하지 않는 예외. → 개발자의 실수로 발생하는 예외 모든 객체의 최상위 부모가 Object이듯, 예외도 최상위 부모는 Object Throwable : 최상위 예외...

[Java 교육] 오버라이딩/인터페이스/다형성

[0202 공부 내용 정리] 메소드 오버라이딩 메소드 오버로딩(method overloading) : 메소드의 이름은 동일하고 입력 항목이 다른 경우 동일한 리턴 타입과 메소드명, 다른 매개변수 void sleep() void sleep(int hour) 메소드 오버라이딩(@Override) : 상속된 부모의 메소드 내용이 자식 클래스에 맞지 않을 경우, 자식 클래스에서 동일한 메소드를 재정의할 수 있음. public class Parent { void method1() { System.out.println("Parent의 method1 호출"); } void method2() { System.out.println("Parent의 method2 호출"); } } public class Child exte..

[Java 교육] final/상수/Getter,Setter/상속

[공부 내용 정리] final 필드 final 필드가 초기값 지정이 되면 이것이 최종적인 값이 되며, 프로그램 실행 도중에 수정할 수 없음. final은 프로그램을 수행하면서 그 값이 바뀌면 안 될 때 사용함. final int time = 3; 필드의 초기값을 줄 수 있는 방법은 필드 선언시 사용! 상수 (static final) 불변의 값을 저장하는 필드. 상수 이름은 모두 대문자로 작성해야함. 언더바(_)로 연결. static final double PI = 3.141592; public class Earth { static final double EARTH_RADIUS = 6400; static final double EARTH_SURFACE_AREA; static { EARTH_SURFACE_A..