JAVA
-
인프런 | 스프링 입문 - 프로젝트 환경설정JAVA/스프링 입문 2022. 7. 15. 14:34
[무료] 스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술 - 인프런 | 강의 (inflearn.com) Gradle은 의존관계가 있는 라이브러리를 함께 다운로드 함 " 스프링 부트 라이브러리 " spring-boot-starter-web sping-boot-starter-tomcat: 톰캣 (웹서버) spring-webmvc: 스프링 웹 MVC spring-boot-starter-thymeleaf: 타임리프 템플릿 엔진(View) spring-boot-starter(공통): 스프링 부트 + 스프링 코어 + 로깅 spring-boot -> spring-core spring-boot-starter-logging -> logback, slf4j " 테스트 라이브러리 " spring-b..
-
이것이 자바다 | 10장 예외처리JAVA/이것이 자바다 2022. 7. 12. 17:38
10.1 예외와 예외 클래스 예외 일반 예외 실행 예외 일반예외(= 컴파일러 체크 예외) : 자바 소스를 컴파일하는 과정에서 예외 처리 코드가 없으면 컴파일 오류 발생 실행예외: 컴파일하는 과정에서 예외 처리 코드를 검사하지 않는 예외 일반예외 vs 실행예외 일반예외: Exception을 상속받지만 Runtime Exception을 상속받지 않는 클래스 실행예외: RuntimeException을 상속받는 클래스 10.2 실행예외 1. NullPointerException 객체참조가 없는 상태 (= null값을 갖는 참조 변수로 객체 접근 연산자인 도트( . )를 사용할 경우 발생 2. ArrayIndexOutOfBoundsException 배열에서 인덱스 범위를 초과하여 사용할 경우 발생 3. Numbe..
-
이것이 자바다 | 9장 중첩 클래스와 중첩 인터페이스JAVA/이것이 자바다 2022. 7. 12. 01:31
9.1 중첩 클래스와 중첩 인터페이스란? 클래스가 여러 클래스가 아닌 특정 클래스와 관계를 맺을 경우, 관계 클래스를 클래스 내부에 선언하는 것이 좋음 => 중첩 클래스: 클래스 내부에 선언한 클래스 중첩 클래스 사용 시 장점: 두 클래스의 멤버들을 서로 쉽게 접근 가능 코드의 복잡성 감소 중첩 인터페이스: 주로 UI 프로그래밍에서 이벤트를 처리할 목적으로 많이 활용됨 9.2 중첩 클래스 멤버 클래스 로컬 클래스 1. 인스턴스 멤버 클래스 : static 키워드 없이 선언된 클래스 인스턴스 멤버 클래스는 인스턴스 필드와 메소드만 선언 가능. 정적 필드와 메소드는 선언 불가능(static 불가능) A클래스 외부에서 인스턴스 멤버 클래스 B의 객체를 생성하기 위해서는 A객체를 생성하고 B객체를 생성해야 함 ..
-
이것이 자바다 | 8장 인터페이스JAVA/이것이 자바다 2022. 7. 10. 15:18
인터페이스 인터페이스의 역할: 개발 코드와 객체가 서로 통신하는 접점 역할 개발 코드 -> 인터페이스의 메소드 => 인터페이스 -> 객체의 메소드 (호출) 클래스와 물리적 형태는 동일 클래스와 다른 점은 소스를 작성할 때 선언하는 방법의 차이 8.2 인터페이스 선언 [public] interface 인터페이스명 { ... } 인터페이스는 객체로 생성할 수 없기 때문에 생성자를 가질 수 없음 상수와 메소드만 가질 수 있음 interface 인터페이스명 { // 상수 타입 상수명 = 값; // 추상 메소드 타입 메소드명(매개변수, ...); // 디폴트 메소드 default 타입 메소드명(매개변수, ...) {...} // 정적 메소드 static 타입 메소드명(매개변수) {...} } 상수: 인터페이스에 ..
-
이것이 자바다 | 7장 상속JAVA/이것이 자바다 2022. 7. 7. 03:16
상속 방법: 자식 클래스를 선언할 때 어떤 부모 클래스를 상속받을 것인지를 결정 class 자식클래스 extends 부모클래스 { // 필드 // 생성자 // 메소드 } class SportsCar extends Car { } *자바는 다중 상속을 허용하지 않음 -> extends 뒤에는 하나의 부모 클래스만 와야 함 7.3 부모 생성자 호출 부모 생성자는 자식 생성자의 맨 첫 줄에서 호출됨 => 만약 자식 클래스의 생성자가 명시적으로 선언되지 않았다면 컴파일러는 기본 생성자를 생성함 public 자식클래스() { super(); } super() 은 부모의 기본 생성자를 호출함 직접 자식 생성자를 선언하고 명시적으로 부모 생성자를 호출하고 싶은 경우 자식클래스(매개변..
-
이것이 자바다 | 15장 컬렉션 프레임워크 (1)JAVA/이것이 자바다 2022. 7. 5. 15:06
컬렉션 프레임워크: 객체들을 효율적으로 추가, 삭제, 검색할 수 있도록 java.util 패키지에 컬렉션과 관련된 인터페이스와 클래스들을 포함시켜 놓은 것 15.2 List 컬렉션 list 컬렉션은 객체 자체를 저장하는 것이 아니라 객체의 번지를 참조함 null 도 저장이 가능함 (해당 인덱스는 객체 참조를 하지 않음) 1. ArrayList 저장용량을 초과한 객체들이 들어오면 자동적으로 저장 용량이 늘어남 객체를 추가하면 인덱스 0부터 저장됨 특정 인덱스의 객체를 제거하면 뒤 인덱스부터 마지막 인덱스까지 모두 앞으로 1씩 당겨짐 => 빈번한 삭제 삽입이 일어날 경우 사용이 바람직하지 않음 but, 인덱스 검색이나 맨 마지막에 객체를 추가하는 경우 좋음 import.java.util.*; public c..
-
이것이 자바다 | 11장 기본 API 클래스 (1)JAVA/이것이 자바다 2022. 7. 4. 14:39
11.2 java.lang 과 java.util 패키지 1. java.lang 패키지 자바 프로그램의 기본적안 클래스를 담고있는 패키지 -> import 없이 사용 가능 2. java.util 패키지 Arrays, Calendar, Date, Objects, StringTokenizer, Random 11.3 Object 클래스 따로 다른 클래스를 상속하지 않으면 암시적으로 java.lang.Object 클래스를 상속하게 됨 => 자바의 모든 클래스는 Object 클래스의 자식이거나 자손 클래스임 (Object는 자바의 최상위 부모 클래스) 1. 객체 비교 (equals()) 모든 객체가 매개값으로 대입될 수 있음 (Object 타입) boolean result = obj1.equals(obj2); 객체..
-
이것이 자바다 | 6장 클래스JAVA/이것이 자바다 2022. 6. 27. 18:29
6.1 객체 지향 프로그래밍 속성 - 필드 동작 - 메소드 현실 세계의 객체를 소프트웨어 객체로 설계하는 것 -> 모델링 객체 모델링: 현실 세계 객체의 속성과 동작을 추려내어 소프트웨어 객체의 필드와 메소드로 정의하는 과정 메소드: 객체들 사이의 상호작용 수단 메소드 호출: 객체가 다른 객체의 기능을 이용하는 것 ex) 리턴값 = 전자계산기객체.메소드(매개값1, 매개값2, ...); 캡슐화 객체의 필드, 메소드를 하나로 묶고, 실제 구현 내용을 감추는 것 상속 상위 객체가 하위 객체에게 필드와 메소드를 물려주어 하위 객체가 사용할 수 있도록 하는 것 다형성 같은 타입이지만 실행 결과가 다양한 객체를 이용할 수 있는 성질 6.2 객체와 클래스 클래스로부터 만들어진 객체를 해당 클래스의 인스턴스라고 함 클..