목록Language/자바 정리 할래 (7)
보근은 참고 있다
package 키워드 import 키워드 클래스패스 CLASSPATH 환경변수 -classpath 옵션 접근 지시자 클래스의 이름 클래스의 이름은 두 가지가 있다. 클래스 파일 자체의 이름과 패키지+클래스의 이름인 FQCN(Fully Qualified Class Name)이 있다. String 클래스를 예시로 들어보면 java.lang.String이 FQCN이다. 같은 이름을 가진 서로 다른 클래스가 있다면, 이렇게 사용해야 한다. import mypackage.MyClass; class Main { public static void main(String[] args) { MyCalss m1 = new MyClass(); // mypackage.MyClass yourpackage.MyClass m2 = ..
자바 상속의 특징 super 키워드 메서드 오버 라이딩 다이내믹 메서드 디스패치 (Dynamic Method Dispatch) 추상 클래스 final 키워드 Object 클래스 상속 상속이란? 한 클래스가 다른 클래스의 속성들을 획득하는 것. 상속을 통해 자식 클래스는 부모 클래스의 필드와 메서드를 재사용할 수 있다. OOP의 주요 개념이다. 아주 합리적이고 똑똑한 거 같다. 단일 상속 : 한 클래스가 하나의 클래스만을 상속받는다. 다단계 상속 : 클래스가 기본 클래스가 아닌 기본 클래스의 파생 클래스를 상속받는다. 계층적 상속 : 한 클래스가 여러 하위 클래스에 상속을 한다. 다중 상속 : 한 클래스가 여러 개의 클래스를 상속받는다. 자바 상속의 특징 상속을 해주는 상위 클래스를 부모 클래스(Paren..
클래스 정의하는 방법 객체 만드는 방법 (new 키워드 이해하기) 메소드 정의하는 방법 생성자 정의하는 방법 this 키워드 이해하기 클래스 정의하는 방법 클래스란, 모든 Java 프로그램의 가장 기본적인 구조를 이루는 요소이다. 클래스는 필드와 메소드를 포함하며 새로운 참조 타입을 정의하기도 한다. 클래스의 기본 구성 필드 변수(멤버 변수) 메소드 생성자 class MyClass { String name; // 멤버 변수들 int age; public MyClass() { // Default 생성자 } public MyClass(String name, int age) { // AllArgs 생성자 this.name = name; this.age = age; } public void print() { /..
선택문 반복문 과제 0 : JUnit 5 학습하세요. 과제 1 : live-study 대시 보드를 만드는 코드를 작성하세요. 과제 2 : LinkedList를 구현하세요. 과제 3 : Stack을 구현하세요. 과제 4 : 앞서 만든 ListNode를 사용해서 Stack을 구현하세요. 과제 5 : Queue를 구현하세요. 선택문 switch는 if처럼 프로그램 내에서 분기를 만들어 준다. switch가 하는 일을 if와 else if, else로 충분히 할 수 있지만 단일 변수에 의존하는 분기 상황의 경우 switch문이 더 뛰어난 가독성을 보여준다. switch의 분기를 나타낼 변수는 char, byte, short, int와 이들의 wrapper class, String과 enum이 올 수 있다. in..
산술 연산자 비트 연산자 관계 연산자 논리 연산자 instanceof assignment(=) operator 화살표(->) 연산자 3항 연산자 연산자 우선 순위 (optional) Java 13. switch 연산자 산술 연산자 + 더하기 int a = 6 + 5; // 11 - 빼기 int b = 6 - 5; // 1 * 곱하기 int c = 6 * 5; // 30 / 나누기 double d = 6 / 5; // 1.2 % 나머지 int e = 6 % 5; // 1 이것들 외에도 ++, -- 등의 증감 연산자가 있다. 증감 연산자는 변수에 1을 더하거나 빼는 연산자인데, 위치마다 증감이 일어나는 시기가 다르다. int a = 5; int b = new int[2]; b[0] = a++; // b[0]..
프리미티브 타입 종류와 값의 범위 그리고 기본 값 프리미티브 타입과 레퍼런스 타입 리터럴 변수 선언 및 초기화하는 방법 변수의 스코프와 라이프타임 타입 변환, 캐스팅 그리고 타입 프로모션 1차 및 2차 배열 선언하기 타입 추론, var 프리미티브 타입 종류와 값의 범위 그리고 기본 값 메모리 크기 값의 범위 기본 값 boolean 1byte true or false false byte 1byte -128 ~ 127 ( -2^7 ~ 2^7 - 1) 0 short 2byte -32,768 ~ 32787 ( -2^15 ~ 2^15 - 1) 0 int 4byte -2,147,483,648 ~ 2,147,483,647 ( -2^31 ~ 2^31 - 1) 0 long 8byte –9,223,372,036,854,7..
JVM이란 무엇인가 컴파일 하는 방법 실행하는 방법 바이트코드란 무엇인가 JIT 컴파일러란 무엇이며 어떻게 동작하는지 JVM 구성 요소 JDK와 JRE의 차이 먼저 자바 코드가 실행되는 과정은, 자바로 작성한 모든 코드들은 .java를 확장자로 하는 기본 텍스트 파일에 쓰여진다. 이 코드들은 javac 컴파일러에 의해 .class 파일로 컴파일 된다. .class 파일에 쓰여진 기계어들은 프로세서의 명령어가 아닌, jvm의 기계어인 바이트코드이다. 그 바이트코드를 jvm이 해석해 프로그램이 실행된다. JVM이란 무엇인가 JVM(Java Virtual Machine)이란, 자바를 실행하기 위한 가상 머신이다. 자바 애플리케이션은 모두 이 jvm을 통해 실행이 되기 때문에 자바 애플리케이션이 실행되려면 반드..