728x90
✅ 공부를 할 때 코드를 전부 외우려고 하지 말고, 예제에서 적힌 주석, 클래스 선언 라인, 파라미터 등을 외워라
컬렉션 프레임 워크
컬렉션이란?
- 다수의 데이터를 쉽게 처리할 수 있는 표준화된 방법을 제공하는 클래스
- List와 Map은 인터페이스로 추상메서드이다
- List → ArrayList 상속 (인덱스 값, 순서 O, 중복 O)
- Map → HashMap 상속 (키 값, 순서 X, 중복 X)
- 두 클래스가 컬렉션에서 가장 대표적인 클래스이다
HashMap 클래스
- HashMap은 Map의 인터페이스를 상속받는 클래스
Map<String, 저장할 데이터 클래스 이름> data = new HashMap<String, 저장할 데이터의 클래스이름>();
- 선언과 할당 시에 데이터형(String)과 저장할 데이터형을 클래스의 이름으로 명시하는 것을 제너릭스 라고 한다.
- <값의 이름, 값의 종류>
- 기본 자료형을 보관할 경우 Wrapper 클래스 이름 사용한다.
- 기존 저장된 데이터와 중복되는 이름이 저장될 경우, 기존 데이터를 덮어씌우게 된다.
✅ 암묵적 형변환을 하면서 선언하는 이유? → 객체의 다향성을 보존하면서 효율적으로 한꺼번에 관리하려고
- 데이터를 넣을 때는 put , 데이터를 꺼낼 때는 get(키값)
- 객체를 넣는 것이므로 Null 값도 넣을 수 있다
ArrayList 클래스
- ArrayList는 List 인터페이스를 상속받는 클래스
List<저장할 데이터 클래스 이름> list = new ArrayList<저장할 데이터 클래스 이름>();
- 데이터를 이름표 없이 무제한으로 저장 가능하다.
- 알아서 인덱스 값을 부여받는다.
- 순서가 있으니, 데이터 넣을 때는 add 로 추가한다.
- List를 사용하는 가장 일반적인 방법은, 사용자 정의 클래스에 대한 객체를 포함하도록 지정하는 것
네트워크와 통신
URI, URL
URI (Uniform Resource Identifiers)의 약자
리소스를 식별하기 위한 문자열 전반을 나타낸다
URL 은 리소스의 장소(네트워크 상의 위치)를 나타낸다
URI 밑에 URL이 포함되는 구조이다.
보통 클라이언트가 서버에 요청할 때는 URL을 사용한다
프로토콜이란?
- 외규협정문서라고도 하며, 통신을 할 때 있어서 어떠한 방식으로 통신을 하느냐에 따라 정해놓은 것이다.
통신이란?
- 서로 다른 프로그램 간에 데이터를 주고 받는 것이다
- 서버-클라이언트 간의 통신을 가장 많이 한다
✅ https://comic.naver.com/webtoon/weekdayList.nhn?week=tue&order=StarScore&view=image
→ URL에서 ? 이후는 getParameter이며 전달자이다 → 이 URL에서 전달 요소는 총 3개이다
클라이언트가 서버에 요청할 때 사용하는 기능은
- get/post, cookie/session 이렇게 총 4가지이다 → 웹 상태유지 기법이다
운영체제의 기능
- 프로세스 관리
- 파일 시스템 관리
- 명령어 해석
- 하드웨어 제어
하드링크란?
디렉토리 - 파일 - 이름, i-node, datablock 구조로 구성되어 있는데,
이름과 i-node를 연결하는 것을 하드링크라고 한다.
→ 이 개념은 윈도우에는 없고 리눅스에만 있다. 윈도우는 파일에 신뢰성이 부족하기 때문이다.
파일 입출력
File 클래스란?
- 파일 또는 폴더에 대한 정보를 제공하는 클래스
- 정보를 조회하고자 하는 파일이나 폴더의 경로에 대한 문자열을 파라미터로 전달 → 이때 경로가 실제로 존재하지 않더라고 객체 생성 가능
✅ 파일의 위치를 나태는 것 : 경로
절대 경로 → 절대적인 위치를 의미하는 경로
장점 : 어디서 말해도 똑같은 위치 / 단점 : 길다
상대 경로 → 작업 디렉토리 기준으로 위치 표현
장점 : 편하다, 간편하다 / 단점 : 그때그때 다르다
스트림이란?
- 통로, 입출력 디바이스의 방식을 무시하고 1바이트씩 연속적으로 전달되는 추상화된 형태
OutputStream 과정
- OutputStream 객체 생성
- 저장할 내용 byte 배열로 변환
- 변환한 배열 write 메서드에게 파라미터로 전달
- OutputStream 닫기
InputStream 과정
- InputStream 객체 생성
- 읽을 내용을 담기 위한 빈 byte 배열 생성
- 파일 내용 read로 읽기
- InputStream 닫기
- 읽을 내용 문자열로 변환 (변환시 인코딩 필요)
❗ 파일 저장/출력 시 유의사항 : 각각 단계마다 예외처리를 강제적으로 요구한다. 예외처리시 변수의 유효성 범위에 대한 처리에 유의해야 한다.
이 내용은 itpaper 주영아 강사님의 교재를 발췌했습니다.
728x90