본문 바로가기

전체 글111

11주차 과제 : Enum 📌 enum 정의하는 방법 열거형(enum)이란 - 관련된 상수들을 같이 묶어 놓은 것. - == 사용 시 Java는 열거형의 값과 타입을 모두 체크함 열거형 정의 방법 // enum 열거형이름{ 상수명1, 상수명2, ... } enum Direction { EAST, SOUTH, WEST, NORTH } class Unit { Direction dir; // 열거형을 인스턴스 변수(iv)로 선언 void init(){ dir = Direction.EAST; } } 📌enum이 제공하는 메소드 (values()와 valueOf()) - values() : 열거형의 모든 상수를 배열에 담아 반환 - valuesOf(String name) : 열거형 상수의 이름으로 문자열 상수에 대한 참조를 얻을 수 있음 .. 2022. 10. 18.
10주차 과제 : 멀티쓰레드 프로그래밍 쓰레드 - 프로세스의 자원을 이용해서 실제로 작업을 수행하는 것 - 모든 프로세스에는 최소 하나 이상의 쓰레드가 존재하고, 둘 이상의 쓰레드를 가진 프로세스를 '멀티쓰레드 프로세스' 라고 함 📌 Thread 클래스와 Runnable 인터페이스 쓰레드를 구현하는 방법 2가지 - Thread 클래스 상속 받기 - Runnable 인터페이스 구현하기 * Runnable 인터페이스 구현하는 방법이 더 낫다. 왜냐면, 자바는 단일상속이기 때문에 Thread 클래스 상속 시 다른 클래스를 상속받을 수 없다. 인터페이스는 다중상속 가능 // Thread클래스 상속 class MyThread extends Thread { public void run() { // Thread 클래스의 run()을 오버라이딩 /*작업 내.. 2022. 10. 18.
8주차 과제 : 인터페이스 📌 인터페이스 - 일종의 추상클래스 (추상클래스보다 추상화 정도 높음) - 추상메서드와 상수만 멤버로 가질 수 있음 인터페이스 작성 package com.kh.sum.myPage.model.service; public interface MyPageService { // 인터페이스 선언 int selectCount(); // 추상메소드 int getQnACount(); } 인터페이스 상속 - 인터페이스는 클래스와 달리 다중상속 가능 - 다중상속할 경우 상속한 모든 인터페이스의 추상 메소드들을 오버라이딩해서 구현해야 함 인터페이스 구현 - 클래스 상속과 비슷. 'extecds' 대신 'implements' 사용 - 인터페이스에 정의된 추상메서드 완성해야 함 - 상속과 구현 동시 가능 package com.k.. 2022. 10. 11.
7주차 과제 : 패키지 📌 package - 서로 관련된 클래스와 인터페이스의 묶음 - 물리적으로 폴더 (클래스는 물리적으로 파일) 패키지 선언 - 소스파일에 첫 번째 문장으로 단 한번 선언 - 모든 클래스는 하나의 패키지에 속하며, 패키지가 선언된지 않은 클래스는 자동으로 이름없는(default) 패키지에 속함 📌 classpath - JVM이 프로그램을 실행할 때, 클래스파일(.class)를 찾는데 기준이 되는 경로 classpath 환경변수 - classpath 지정하는 방법 - 제어판 > '환경변수' 검색 > 시스템 환경 변수 편집 > 시스템 속성의 환경변수 > 시스템 변수에 넣기 📌 import - 사용할 클래스가 속한 패키지를 지정하는데 사용 - import문을 사용하면 클래스를 사용할 때 패키지명 생략 가능 - j.. 2022. 10. 6.