일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- vue.js
- json
- JavaScript
- ES6
- jsp
- 알고리즘
- nginx
- 메서드
- jQuery
- Flutter
- 글로벌
- lightsail
- jpa
- REACT
- 스프링
- gradle
- Keycloak 17.0.1
- 인텔리제이
- spring
- arraylist
- SpringBoot
- vue
- Docker
- 맥길대학교
- 현장학습
- aws
- 에러
- java
- 자바스크립트
- keycloak
- Today
- Total
목록java (20)
korean IT student
목표 자바의 예외 처리에 대해 학습하세요. 학습할 것 (필수) 자바에서 예외 처리 방법 (try, catch, throw, throws, finally) 자바가 제공하는 예외 계층 구조 Exception과 Error의 차이는? RuntimeException과 RE가 아닌 것의 차이는? 커스텀한 예외 만드는 방법 예외(Exception)와 에러(Error) Exception 프로그램 실행 중 개발자가 구현한 로직에서 던져진 문제에 대한 정보를 담는 클래스를 말하며, 자바에서의 Exception은 컴파일 시점에서 컴파일러에게 발견되는 확인된 예외이다. 예외 처리를 통해 프로그램을 종료하지 않고 정상 실행 상태가 유지되도록 할 수 있다. Error 컴퓨터 하드웨어의 오동작 또는 고장으로 인해 응용프로그램 실행..
목표 자바의 인터페이스에 대해 학습하세요. 학습할 것 (필수) 인터페이스 정의하는 방법 인터페이스 구현하는 방법 인터페이스 레퍼런스를 통해 구현체를 사용하는 방법 인터페이스 상속 인터페이스의 기본 메소드 (Default Method), 자바 8 인터페이스의 static 메소드, 자바 8 인터페이스의 private 메소드, 자바 9 1. 인터페이스란? 인터페이스란 일종의 추상클래스이며, 추상클래스보다 추상화의 정도가 더 높다. 추상클래스는 추상메서드 이외에도 구현부가 있는 일반메서드나, 변수를 사용할 수 있는 반면, 인터페이스는 오직 추상메서드와, 상수만을 가질 수 있다. 2. 인터페이스 정의하는 방법 interface hello { public static final 타입 상수 = 값; // 추상 메소드..
목표 자바의 패키지에 대해 학습하세요. 학습할 것 (필수) package 키워드 import 키워드 클래스패스 CLASSPATH 환경변수 -classpath 옵션 접근지시자 1. package 키워드 클래스들을 분류하는 클래스의 묶음으로서 디렉터리와 같다. 소스에 가장 첫 줄에 단 한 번만 명시되어야 함. 같은 소스 파일의 클래스들은 모두 같은 패키지에 속함 패키지 선언이 없으면 이름 없는 패키지에 속함 import java.util.*; 패키지 이름 규칙 소문자로 작성 자바 예약어 사용 금지(ex: java) 패키지를 사용하는 이유 이름 충돌 방지 클래스, 인터페이스, 이넘, 어노테이션 등 분류를 통해 쉽게 찾고 사용하기 위함 접근 제어 데이터 캡슐화 2. import 키워드 다른 패키지에 속한 클래스..
목표 자바의 상속에 대해 학습하세요. 학습할 것 (필수) 자바 상속의 특징 super 키워드 메소드 오버라이딩 다이나믹 메소드 디스패치 (Dynamic Method Dispatch) 추상 클래스 final 키워드 Object 클래스 1. 자바 상속의 특징 class 자식클래스명 extends 부모클래스명{} 상속이란 상위클래스에서 정의한 필드와 메서드를 하위클래스도 동일하게 사용할 수 있게 물려받는 것이다. extends 키워드를 사용하여 상속 class 자식클래스명 extends 부모클래스명1, 부모클래스명2{} // 불가능하다. 위와 같이 두 개의 클래스를 상속받는 것은 불가능 다중상속을 허용하면 여러 클래스로부터 상속받을 수 있기 때문에 복합적인 기능을 가진 클래스를 쉽게 작성할 수 있다는 장점이 ..
목표 자바의 Class에 대해 학습하세요. 학습할 것 (필수) 클래스 정의하는 방법 객체 만드는 방법 (new 키워드 이해하기) 메소드 정의하는 방법 생성자 정의하는 방법 this 키워드 이해하기 1. 클래스 정의하는 방법 자바는 객체 지향 프로그래밍인데 이때 객체를 만들어 내기 위한 설계도와 같은 개념을 클래스라고 한다. 객체의 상태를 나타내는 필드, 객체의 행동을 나타내는 메소드로 구성된다 클래스는 위와 같이 정의되어 사용됩니다. 변수와 메서드가 들어가고 이렇게 만들어진 객체를 만들기 위한 설계도일 뿐입니다. 실제로 객체를 만들기 위해서는 인스턴스화를 거쳐주어야 합니다. 2. 객체 만드는 방법 (new 키워드 이해하기) 클래스 객체 변수 = new 클래스(); 클래스를 정의했다면 클래스로부터 객체를 ..
목표 자바가 제공하는 제어문을 학습하세요. 학습할 것 (필수) 선택문 반복문 1. 선택문 if/else 문 int a = 5; // a가 5보다 크거나 같으므로 실행 if(a >= 5){ a = 7; } =================================== int a = 6; if(a > 5){ System.out.println("a가 5보다 큰 경우"); } else if(a > 7){ System.out.println("a가 7보다 큰 경우"); } else { System.out.println("위의 조건이 아닌 경우"); } =================================== switch 문 - 변수의 값에 따라 문장을 실행하는 제어문 String test = "stud..
목표 자바가 제공하는 다양한 연산자를 학습하세요. 학습할 것 산술 연산자 비트 연산자 관계 연산자 논리 연산자 instanceof assignment(=) operator 화살표(->) 연산자 3항 연산자 연산자 우선 순위 (optional) Java 13. switch 연산자 1. 산술 연산자 산술 연산자는 사칙연슨을 다루는 연산자로, 가장 기본적이면서 가장 많이 사용되는 연산자 중 하나입니다. 산술 연산자는 모두 두 개의 피연선자를 가지는 이항 연산자이며, 피연산자들의 결합 방향은 왼쪽에서 오른쪽입니다. int a = 2; int b = 3; // 연산자: +, 피연산자: a, b, 출력 : 5 a + b // 연산자: -, 피연산자: a, b, 출력 : -1 a - b // 연산자: *, 피연산자:..
목표 자바의 프리미티브 타입, 변수 그리고 배열을 사용하는 방법을 익힙니다. 학습할 것 프리미티브 타입 종류와 값의 범위 그리고 기본 값 프리미티브 타입과 레퍼런스 타입 리터럴 변수 선언 및 초기화하는 방법 변수의 스코프와 라이프타임 타입 변환, 캐스팅 그리고 타입 프로모션 1차 및 2차 배열 선언하기 타입 추론, var 1. 프리미티브 타입 종류와 값의 범위 그리고 기본 값 타입 기본값 값의 범위 값의 크기 정수형 byte 0 -128 ~ 127 1byte short 0 -32,768 ~ 32,767 2byte int 0 -2,147,483,648 ~ 2,147,483,647 4byte long 0L 9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807 8by..
목표 자바 소스 파일(.java)을 JVM으로 실행하는 과정 이해하기. 학습할 것 JVM이란 무엇인가 컴파일 하는 방법 실행하는 방법 바이트코드란 무엇인가 JIT 컴파일러란 무엇이며 어떻게 동작하는지 JVM 구성 요소 JDK와 JRE의 차이 1. JVM이란 무엇인가 Java Virtual Machine 의 줄임말 이며 Java Byte Code를 OS에 맞게 해석 해주는 역할을 합니다. Java compiler는 .java 파일을 .class 라는 Java byte code로 변환 시켜 줍니다. Byte Code 는 기계어가 아니기 때문에OS에서 바로 실행되지 않습니다. 이때 JVM은 OS가 ByteCode를 이해할 수 있도록 해석 해줍니다. 하지만 JVM의 해석을 거치기 때문에 c언어 같은 네이티브 언..
JSON으로 들어온 객체를 JAVA로 변환하여 보자. 먼저 외부 라이브러리가 있어야한다. github.com/FasterXML/jackson-databind FasterXML/jackson-databind General data-binding package for Jackson (2.x): works on streaming API (core) implementation(s) - FasterXML/jackson-databind github.com github.com/FasterXML/jackson-core FasterXML/jackson-core Core part of Jackson that defines Streaming API as well as basic shared abstractions - Fas..