File 클래스 시스템에 있는 파일이나 디렉토리 추상화 클래스 파일의 생성, 삭제, 크기, 읽기 또는 쓰기 모드 등과 같은 파일 자체 관리하기 위한 클래스 new File(String파일 또는 경로명) 1. new File(String 파일 또는 경로명) File file = new File("d:/D_Other/test.txt"); File file2 = new File("d:/D_Other"); 2. new File(File parent, String child) → 'parent' 디렉토리 안에 있는 'child' 파일 또는 디렉토리를 위한 파일 객체 생성 //file2 = "d:/D_Other" //"d:/D_Other" + "text.txt" File file3 = new File(file2, ..
전체 글
원본 더보기 10마리의 말들이 경주하는 경마 프로그램 작성하기 말은 Horse라는 이름의 클래스로 구성하고, 이 클래스는 말이름(String), 등수(int)를 멤버변수로 갖는다. 그리고, 이 클래스에는 등수를 오름차순으로 처리할 수 있는 기능이 있다.( Comparable 인터페이스 구현) 경기 구간은 1~50구간으로 되어 있다. 경기 중 중간중간에 각 말들의 위치를 >로 나타내시오. 예) 1번말 --->------------------------------------ 2번말 ----->---------------------------------- ... 경기가 끝나면 등수를 기준으로 정렬하여 출력한다. import java.util.ArrayList; public class HomWork { stat..
더보기 로또를 구매하는 프로그램 작성하기 사용자는 로또를 구매할 때 구매할 금액을 입력하고 입력한 금액에 맞게 로또번호를 출력한다. (단, 로또 한장의 금액은 1000원이고 거스름돈도 계산하여 출력한다.) ========================== Lotto 프로그램 -------------------------- 1. Lotto 구입 2. 프로그램 종료 ========================== 메뉴선택 : 1
싱글 스레드란? 스레드(경량 프로세스) : 프로세스 내의 독립적인 순차흐름 또는 제어 프로세스 : 자기 자신만의 주소 공간을 갖는 독립적인(Self-Contained) 실행 프로그램 (a)의 경우에는 한 작업을 마친 후에 다른 작업을 시작하지만 (b)의 경우는 처리시간이 빠르기에 두 작업이 동시에 일어나는 것처럼 보인다 (b)의 경우가 오히려 시간이 더 걸림 이유는 컨텍스트 스위칭에 시간이 걸리기 때문에 컨텍스트 스위칭 : 프로세스 혹은 스레드간의 전환을 의미 원본 더보기 public class T01ThreadTest { public static void main(String[] args) { //싱글 스레드 프로그램 for (int i = 1; i
와일드 카드에 대하여 와일드카드(?)는 제너릭 타입을 이용한 타입 안전환 코드를 위해 사용되는 특별한 종류의 인수(Argument)로서, 변수선언, 객체생성 및 메서드를 정의할 때 사용된다. => 모든 허용가능한 타입이 가능 Fruit 클래스 생성 class Fruit{ private String name;// 과일이름 public Fruit(String name) { super(); //자신이 상속받은 부모의 생성자를 호출하는 메소드 this.name = name; } public String getName() { return name; } public void setName(String name) { this.name = name; } @Override public String toString() {..
Generic 제약 하는 이유 : Integer 타입 전용으로 만든 클래스에 문자열 파라미터가 들어가면 컴파일과정에서 오류가 발생하지 않고 서비스 호출 시점에 오류 발생하는 오류 피하고자 제너릭에 제한 걸어줌 Utill2클래스 생선 lass Util2{ //extends 이용해서 제약 걸음 public static int compare(T t1, T t2) { double v1 = t1.doubleValue(); double v2 = t2.doubleValue(); return Double.compare(v1, v2); } } Main public class T04GenericMethodTest { public static void main(String[] args) { //앞에 작으면 음수 int re..
제너릭 메서드 R 메서드 이름(T t) 파라미터 타입과 리턴타입으로 타입글자를 가지는 메서드 선언방법 : 리턴타입 앞에 추가 타입글자를 기술한 후 사용함 Pair클래스 생성 class Pair{ private K key; private V value; //생성자 선언 public Pair(K key, V value) { this.key = key; this.value = value; } //getter & setter public K getKey() { return key; } public void setKey(K key) { this.key = key; } public V getValue() { return value; } public void setValue(V value) { this.value =..
제네릭: 결정되지 않은 타입을 파라미터로 처리하고 실제 사용할 때 파라미터를 구체적인 타입으로 대체시키는 기능 만드는 방법 형식 class 클래스명{ 제너릭타입글자 변수명; // 변수선언에 제너릭을 사용하는경우 ... 제너릭타입글자 메서드명(){ //반환값이 있는 메서드에 제너릭을 사용하는 경우 ... return 값; } } 제너릭타입글자 T => Type K => Key V => Value E => Element 제너릭 클래스 생성 class MyGeneric{//타입여러개 작성가능 //T 때마다 원하는 타입 선언 private T val; public T getVal() { return val; } public void setVal(T val) { this.val = val; } @Override ..
Scanner 설정 Scanner 객체 생성 Scanner sc(변수명) = new Scanner(System.in); 문자열 String name = sc.next(); 더보기 실행 예시) ************************** 호텔 문을 열었습니다. ************************** ******************************************* 어떤 업무를 하시겠습니까? 1.체크인 2.체크아웃 3.객실상태 4.업무종료 ******************************************* 메뉴선택 => 1 101 홍길동 1 102 성춘향 3 2 101 1 102 허준 2 101 3 4
0. Map 타입 사용할때 객체 생성 하기! Map map = new HashMap(); 데이터 추가하기: put(key값, value 값) 변수명.put(key,value); map.put("name", "홍길동"); map.put("addr", "대전"); map.put("tel", "010-1111-2222"); System.out.println("map =>" + map);//출력 테이블로 표현하면 map name addr tel 홍길동 대전 010-1111-2222 데이터 수정하기 : put (key값, value 값) 데이터를 저장할 때 key값이 같으면 나중에 입력한 값이 저장된다. key : 중복이 허용 안됨 value : 중복이 허용됨 key 동일하게 작성하고 value 수정하고싶은 값 ..