01. HashSet 클래스1. Set인터페이스를 상속받은 HashSet 객체 생성 방법방법1) 제네릭(Generic)을 사용해 HashSet 객체 생성 - 권장HashSet 객체에는 제네릭 대신 설정된 클래스의 객체만 저장 가능HashSet 객체에 저장된 객체를 반환받아 사용할 경우 명시적 객체 형변환하지 않아도 사용 가능HashSet set = new HashSet(); //권장//배열처럼 String 객체 여러개 저장 가능~ (타입:String)set.add("홍길동");set.add("sdfsd");//set.add(100); //error 방법2) 인터페이스 참조변수(부모)인 Set으로 HashSet객체(자식) 생성 - 매우 권장특히, 인터페이스가 있다면 더더욱 매우 권장!!!!!!!!!!왜?참..
java
01. 자료구조 관련 클래스Collection Class데이타 수집 클래스다수의 객체를 효율적으로 저장하고 관리하기 위한 기능을 제공하는 클래스객체 하나만 저장하는 것이 아님!!!Set인터페이스 , List인터페이스 , Map인터페이스 중 하나를 상속받아 작성된 자식클래스어떤 인터페이스를 상속받느냐에 따라 기능이 달라짐각각의 클래스마다 자료구조 특징들이 있으므로 상황에 따라 적절히 이용1. Set & List 인터페이스//Set과 List는 **Collection인터페이스를 상속받기 때문에** 가진메소드들이 거의 비슷함!!Interface Set implements Interface CollectionInterface List implements Interface Collection2. Map 인터페이스..
01. 표현대상을 추상화하여 클래스로 선언할 때 주의점1. 메소드호출이 다르다면?무조건 클래스 따로 만들어줘야함2. 메소드 호출이 동일하지만, 필드의 자료형만 다르다면?public 클래스1 { String A; 동일한 기능의 메소드;}public 클래스2 { int A; 동일한 기능의 메소드;}public 클래스3 { double A; 동일한 기능의 메소드;} 각각의 클래스들을 만드는 것은 매우 비효율적!클래스를 여러개 만들지 말고, 필드를 Object 자료형으로 선언해보자!public 클래스 { Object A; 동일한 기능의 메소드;} 필드의 자료형이 Object이기 때문에 어떤 클래스로 생성되든 모든 객체 저장해 사용 가능객체 저장 ok만약 원시형데이터타입을 저장하고 싶다? wrapper객..
01. java.text 패키지값을 변환하는 기능을 제공하는 클래스가 선언된 패키지 02. DecimalFormat클래스 - Number값 변환1. 개념Number 객체(숫자값)와 String 객체를 서로 변환하기 위한 기능을 메소드로 제공하는 클래스2. DecimalFormat 생성자로 객체생성DecimalFormat(String pattern) 생성자숫자값에 대한 패턴정보가 저장된 DecimalFormat 객체를 생성하기 위한 생성자패턴문자 : #(숫자 - 공백) , 0(숫자 - 0) , 콤마(,) , 소숫점(.) , 달러($)DecimalFormat decimalFormat=new DecimalFormat("###,###,##0");3. DecimalFormat 객체의 메소드DecimalForm..
01. Date클래스날짜와 시간을 저장하고 날짜와 시간 관련 기능을 메소드로 제공하기 위한 클래스 02.Date객체 만들기1. 기본생성자로 객체생성Date 클래스의 기본 생성자로 Date객체를 생성하여,시스템의 현재 날짜와 시간이 저장된 Date 객체 생성//시스템의 현재 날짜와 시간이 저장된 Date 객체 생성Date now = new Date(); 2. 매개변수가 있는 생성자로 객체생성Date(int year, int month, int date) 생성자Date 클래스의 매개변수가 있는 생성자로 Date객체를 생성하여, 원하는 날짜와 시간이 저장된 Date 객체 생성//[2000년 1월 1일 0시 0분 0초]가 저장된 Date 객체 생성//int year = [1900 + 100] = 2000년..
01. Random클래스1. RandomApp 프로그램package xyz.itwill.util;import java.util.Random;//java.util 패키지 : 프로그램 작성에 유용한 기능을 제공하는 클래스가 선언된 패키지//Scanner 클래스 : 입력장치로부터 값을 입력받기 위한 기능을 메소드로 제공하는 클래스//Arrays 클래스 : 배열 요소를 처리하기 위한 기능을 메소드로 제공하는 클래스//Random 클래스 : 난수값을 관련 기능을 메소드로 제공하는 클래스//Date 클래스 : 날짜와 시간을 저장하고 날짜와 시간 관련 기능을 메소드로 제공하는 클래스//Calendar 클래스 : 날짜와 시간을 저장하고 날짜와 시간 관련 기능을 메소드로 제공하는 클래스//자료구조 클래스(Collecti..
01. 운영체제 & JWM 에 의한 애플리케이션 실행방법운영체제로부터 실행에 필요한 메모리를 할당받아 애플리케이션이 실행된다.자바는 운영체제 위에 JVM이 올라가고, JVM으로부터 메모리를 할당받아 애플리케이션이 실행된다.하드디스크(보조기억장치)보조기억장치(비휘발성) , 단가쌈메모리(주기억장치)주기억장치 (휘발성) , flach memory , 단가비쌈요즘 비휘발성에 단가 저렴한 메모리가 생겨남! 즉, 모든 것이 메모리에 저장되어 처리할 수 있을듯?CPU(중앙처리장치)프로그램 실행 (아이콘 클릭!)보조기억장치에 있는 메모리가 주기억장치(ram)로 이동그것을 대신 해주는 것, 도와주는 것이 운영체제자바는 JVM이 도와줌 02. 프로세스(Process)와 스레드(Thread)🎩프로세스(Process)메모..
01. 스레드(Thread)의 개념프로그램에서 명령을 실행하기 위한 최소의 작업 단위 - 프로그램 흐름하나의 스레드 = 하나의 코드 실행 흐름프로세스(Process) : 메모리에 저장되어 중앙처리장치(CPU)에 의해 실행되는 명령 프로그램[1개 프로세스 내 2개 스레드가 있다] = 2개의 코드 실행 흐름을 가진 프로그램🎩단일 스레드 프로그램JVM에 의해 생성된 main 스레드를 이용하여 main() 메소드의 명령 실행main 메소드가 종료되면 main 스레드는 자동 소멸 - 프로그램 종료🎩다중 스레드 프로그램프로그램 개발자가 스레드를 직접 생성하여 여러 명령을 동시에 실행되도록 만든 프로그램프로그램의 모든 스레드가 소멸되면 프로그램 종료즉, 메인스레드가 끝난다고 해서 프로그램이 종료되지는 않음ex. ..