java(12)
-
IO (input / output) 입/출력, warrper래퍼클래스
IO(Input & Output)), 입/출력: 프로그램 상의 데이터를 외부매체(모니터, 스피커, DB, 웹브라우저, 콘솔, "파일")로 출력하거나 입력장치 (마우스, 키보드, 마이크, "파일")로 입력받는 과정 IO를 진행하고 싶으면 우선적으로 반드시 프로그램과 외부매체간의 "통로"를 만들어야 함 → 스트림(Stream) 선입선출 (First In First Out) 구조 → 큐(Queue) 시간 지연 문제가 발생할 수 있음. 스트림에 넣어진 데이터가 처리되기 전까지 스트림에 사용하는 스레드는 대기locking) 상태단방향 : 입력이면 입력 / 출력이면 출력, 입력용 스트림과 출력용 스트림이 따로 존재함 [ 스트림 구분 ] 1. 스트림의 사이즈바이트 스트림: 1Byte 짜리가 이동할 수 있는 통로..
2024.10.21 -
자바 String 클래스
[String 클래스]리턴 타입메소드 이름(매개 변수)설명charcharAt(int index)특정 위치의 문자 추출booleanequals(Object anObject)두 문자열을 비교byte[]getBytes()byte[]로 리턴byte[]getBytes(Charset charset)주어진 문자셋으로 인코딩한 byte[]로 리턴intindexOf(String str)문자열 내에서 주어진 문자열의 위치를 리턴intlength()총 문자의 수를 리턴Stringreplace(CharSequence target, CharSequence replacement)target 부분을 replacement로 대치한 새로운 문자열을 리턴Stringsubstring(int beginIndex)beginIndex 위치에서..
2024.10.20 -
예외처리 (Exception) try ~ catch
에러(error): 시스템 에러: 컴퓨터의 오작동으로 인해 발생하는 에러컴파일 에러: 프로그램 실행 전 소스코드상의 문법적인 문제로 발생하는 에러런타임 에러: 프로그램 실행 중 발생하는 에러 문법적으로는 문제가 없는데 발생→ 개발자가 예측 가능한 경우 처리하지 않았을 때 발생!논리적 에러: 소스 코드 상 문제도 없고, 실행했을 때도 문제가 발생하지 않음(로지컬 에러) 다만, 의도와는 다르게 동작함 (기획/설계를 잘 못 했을 때) 프로그램 실행 시 발생하는 예외 (RuntimeException) 예외 종류에러 발생 원인NullPointException주소값 객체 참조 에러 (Null 값 참조)IOException입출력 에러 (파일 없음, 접근불가 등)OutOfMemoryException메모리 부족Arit..
2024.10.20 -
오버로딩(overloading), 오버라이딩(overriding), 상속
오버로딩(overloading):같은 이름을 가진 메소드 이나, 매개변수가 다르다면 다른 메소드 한 클래스 안에 같은 이름의 메서드 여러 개 정의매개변수 자료형의 개수, 순서, 종류 다르게 작성해야함단, 매개변수명, 접근제한자, 반환타입은 메소드 오버로딩에 영향을 끼치지 않음원래는 한 개의 메소드 이름에 한 개의 메서드 사용인데 오버로딩은 하나의 이름에 여러 개의 메소드 사용매개변수는 다르지만 같은 의미의 기능 수행오버로딩 성립 조건(3가지 모두 충족)메소드 이름이 같아야 함매개변수의 개수 또는 타입이 달라야 함 (접근제한자와는 상관 없음)반환 타입은 영향이 없음 오버라이딩(overriding) 부모 클래스로부터 상속 받은 메소드를 자손 클래스가 변경하는 것 (부모클래스가 제공하고 있는 메소드를 ..
2024.10.18 -
클래스변수 & 인스턴스변수 & 지역변수
변수의 종류 (클래스, 인스턴스, 지역) class Person{int age; // 인스턴스 변수static String name; // 클래스 변수 void move() {int i = 0; // 로컬변수System.out.println(name + "is moveing" + i);} ※ 선언위치 중요! 인스턴스 변수, 클래스 변수는 클래스 안에서 선언되었기 때문에 멤버 변수로컬 변수 같은 경우는 메서드 안에서 선언되었기 때문에 지역 변수 static은 클래스를 사용하는 내내 고정되어 있는 변수라면 static을 붙여 클래스 변수로 사용- static 있을 경우: 클래스 변수- static 없을 경우: ..
2024.10.18 -
접근제한자(Access Modifier) & 캡슐화
접근 제한자(Access Modifier): 접근을 제한하기 위해 사용되며, 접근이란 클래스 및 인터페이스 그리고 이들이 가지고 있는 멤버의 접근을 말함클래스 내부에서 필드를 선언할 때는 반드시 접근제한자를 붙일것 public: 어디서든(같은패키지, 다른 패키지, 클래스 내/외부 포함 전부) 접근가능protected: 같은 패키지라면 무조건 접근 가능, 다른 패키지라면 상속구조인 클래스에서만 접근 가능default: 같은 패키지에 소속된 클래스에서만 사용private:개인적인 것이라 외부에서 사용 불가, 오직 해당 클래스 안에서만 접근가능접근 제한적용 대상접근할 수 없는 클래스public클래스, 필드, 생성자, 메소드없음protected필드, 생성자, 메소드자식 클래스가 아닌 다른 패키지에 소속된 클..
2024.10.18