전체 글 113

클래스(Class) & 객체(Object)

클래스(Class) 객체를 정의하는 설계도 붕어빵 틀 레시피 public class 클래스명 { // 객체 변수 // 메소드 // (접근제어자) // (static) } 클래스명 객체명 = new 클래스명(); 객체(Object) 실체(?) 인스턴스(Instance) 클래스와 객체의 관계입니다. 클래스로부터 객체를 선언 (인스턴스 환) 어떤 객체는 어떤 클래스의 인스턴스 생성자(Constructor) 객체가 생성될 때 자동으로 호출됩니다. 생성자 규칙 클래스명과 이름 맞춰야합니다. 리턴 타입은 없습니다. public class 클래스명 { // 바로 아래가 생성자 클래스명() {} } this : 객체 자신을 의미합니다. this() : 생성자 위에 것들을 이용한 간단한 예시 class Car { Str..

객체지향 프로그래밍(Object Oriented Programing)

절차 지향 프로그래밍(Procedural Programming) - 객체지향 언어 개념이 나오면서 기존 프로그래밍 방식을 표현하기 위해서 사용했습니다. - 큰 틀은 일렬의 동작(모듈, 함수)를 순서에 맞게 단계적으로 실행합니다. - 데이터와 속성보다는 명령어의 순서와 흐름에 포커싱 합니다. - 소프트웨어 규모가 커지면서 기능들이 복잡해지면서 추가 개발이나 유지보수의 어려움의 한계를 갖습니다. - 절차적 프로그래밍 / 구저적 프로그래밍 객체지향 프로그래밍(Object Oriented Programing) - 클래스를 생성하고 클래스로부터 객체를 만들어 객체 간의 상호작용을 이용하여 주어진 문제를 해결하는 프로그래밍 방식입니다. - 데이터인 필드와 절차인 메소드를 하나로 묶은 클래스 단위의 프로그램입니다. ..

HashMap 주요 메소드

HashMap import java.util.HashMap; 생성자 new HashMap() argument로 (int Capacity, float loadFactor)를 직접 지정할 수 있습니다. 용량은 해싱 기법을 통해 분류되는 카테고리의 갯수라고 할 수 있습니다. 사용률은 전체 용량을 변경할 조건을 의미합니다.(75%가 차면 현재 용량의 2배로 용량 변경 등) 메소드 메소드 기능 put(키, 값) 키(Key)와 값(Value)을 입력, 제네릭으로 지정한 타입에 맞는 일반 배열을 이용해 한번에 넣어줄 수 있음, 만약 중복되는 키/값을 제공하면 기존 키가 가지고 있던 값을 제공된 값으로 변경합니다. keySet() 키를 별도로 추출하여 컬렉션 형태로 반환 합니다.(Set 생성..

HashSet 주요 메소드

HashSet import java.util.hashSet 생성자 - new HashSet(); - 인자값으로 용량과 사용률을 줄 수 있습니다.(HashMap과 동일) - 용량 : 해시 테이블의 갯수를 의미(카테고리의 갯수, 기본 16) - 사용률 : 해시 테이블이 얼마만큼 다 차면 늘려줄 것인지 퍼센트를 기입(기본 0.75) 생성자 HashSet hs = new HashSet(); 메소드 메소드 기능 add(val) 값 추가, 정렬 없이 내부 로직에 맞는 위치에 저장됨, 중복값을 추가할 경우 변동이 없습니다. addAll(hs2) 제공한 다른 컬렉션의 값을 합쳐줌, 중복된 값은 무시합니다. contains(val) 제공한 값이 Set에 있는지 여부를 확인하여 true / false 반환합니다. remo..

ArrayList 주요 메소드

List 배열과 같이 여러 데이터를 담을 수 있는 자료형입니다. 추가로 여러가지 메소드를 제공합니다. ArrayList al = new ArrayList(); al.add(1); al.add('a'); ArrayList import java.util.arrayList 생성자 new ArrayList() : 기본 크기가 10인 배열 생성합니다. new ArrayList() : 기본 크기를 지정하여 (배열이 다 차면 기본 크기만큼 사이즈가 증가합니다.) new ArrayList() : 배열 값의 타입을 지정해줍니다. ※ 재네릭(Generic) - 컬렉션 객체를 생성할 때 저장되는 데이터의 타입을 미리 지정하는 기능입니다. - 제네릭으로 지정한 타입 외에는 담길 수 없도록 합니다. 메소드 메소드 기능 add(..

Array 주요 메소드

Array import java.util.Arrays 메소드 메소드 기능 asList(arr) 배열을 ArrayList로 변환합니다. toString(arr) String으로 변환해줍니다.(배열에도 toString이 존재합니다.) sort(arr) 오름차순 정렬합니다. sort(arr, comparator) Collections.reverseOrder() 내림차순 정렬합니다. sort(arr, int start, int end) 인덱스의 시작과 끝을 정하여, start부터 end-1까지 오름차순 정렬합니다. sort(arr, int start, int end, comparator) 인덱스의 시작과 끝을 정하여, start부터 end-1까지 문자열을 내림차순 정렬합니다. copyOf(arr2, int ne..

StringBuilder 주요 메소드

StringBuilder import java.lang.StringBuilder 생성자 StringBuilder sb = new StringBuilder();// 객체 선언 StringBuilder sb = new StringBuilder("abc");// 문자열을 바로 넣는 방법 메소드 메소드 기능 append() 문자열을 추가합니다. insert(int offset, String str) offset 위치에 str을 추가합니다. replace() 첫번째와 두번째 파라미터로 받는 숫자 인덱스에 위치한 문자열을 대체합니다. substring(int strat ,(int end)) 인덱싱, 파라미터가 하나라면 해당 인덱스부터 끝까지 ,두개라면 시작점과 끝나는 지정-1까지 인덱싱 deleteCharAt(in..

문자열(String) 주요 메소드

String Class String : 문자들로 이루어진 집합 자바에서 문자열을 처리하는 클래스 생성자 String str = "str"; String str = new String("str"); 메소드 메소드 기능 length() 문자열의 길이를 반환합니다. isEmpty() 문자열이 비어있는지 확인합니다. charAt(int index) 지정된 인텍스에 해당하는 문자를 반환합니다. getChars 문자열 배열을 복사합니다. toCharArray 문자열을 문자 배열로 변환합니다. contains 문자열이 특정 문자열 또는 문자를 포함하는지 여부를 확인합니다. indexOf 특정 문자열 또는 문자의 첫 번째 등장 위치의 인덱스를 반환합니다. lastIndexOf 특정 문자열 또는 문자의 마지막 등장 위치..

Object 클래스

Object 클래스 모든 클래스의 조상 클래스 따라서, Object 클래스의 멤버들은 상속을 한다면 다른 클래스에서 사용이 가능합니다. 메소드 메소드 기능 clone 객체 자신의 복사본을 리턴 equals 객체 자신과 같은 객체인지를 리턴 finalize() 소멸될때 실행(소멸자) getClass 객체 자신의 클래스 정보를 담고 있는 Class인스턴스 반환 hashCode 해시코드를 반환 toString 문자열 리턴 notify 객체 자신을 사용하려고 기다리는 쓰레드를 하나만 깨운다. notifyAll 객체 자신을 사용하려고 기다리는 모든 쓰레드를 깨운다.

java.lang 패키지

java.lang 패키지 - 자바 프로그램의 가장 기본이 되는 클래스들을 포함합니다. - java.lang 패키지에 포함되어 있으므로 import문 없이 사용이 가능합니다. - 대표적인 String, System 클래스를 import문 없이 사용할 수 있었던 이유입니다. import java.util.Date; import java.util.Calender; public class Sample { public static void main(String[] args) { String name = "홍길동"; Date today = Calendar.getInstance().getTime(); System.out.println(name); System.out.println(today); } } - String..