본문 바로가기

Java/자바 기반 웹 개발자 과정 필기

[200316.16일차]

반응형

제네릭 클래스, 제네릭 메소드

generic programming

 

일반적인 코드를 작성하고 이 코드를 다양한 타입의 객체에 대하여 재사용하는 프로그래밍 기법

제네릭은 컬렉션 라이브러리에 많이 사용

 

 

 

기존의 방법

일반적인 객체를 처리하려면 object 참조 변수를 사용

object 참조 변수는 어떤 객체이던지 참조 할 수 있다

 EX)

Car.java

Car c1=new Car();

Object c2=new Object();

 

 

 

예제로 하나의 데이터를 저장하는 Store 클래스를 살펴보자.

 

모든 객체를 Object 타입으로 받아들일 수 있다

 

 

 

 

 

 

앞으로 일을 하면서 가장 많이 보게 될 기능

 

 

리스트 : 순서가 있는 데이터들의 집합(인덱스)

스택 : 순서있는 데이터들의 집합을 LL, FO 방식으로 관리하는 자료구조

큐 : 순서있는 데이터들의 집합을 FI,FO방식으로 관리하는 자료구조

set : 순서가 없는 데이터들의 집합(중복 없음)

 

 

 

자바에서의 컬렉션

 

 

컬렉션 인터페이스

 

 

 

 

 

 

 

List 인터페이스

ArrayList : 데이터가 삽입, 삭제 될 때 마다 새로운 배열을 생성

=> 삭제되고 삽입할 때 마다 크기가 하나 작고 큰 배열을 생성해 값들을 집어넣는다.

LinkedList : 인터페이스 데이터가 삽입 삭제 될 때 해당 칸만 추가/삭제 하고 위치만 기억

=> 서로 다른 배열을 엮어준다.

 

 

잦은 탐색 => ArrayList

잦은 수정 => LinkedList

 

 

 

 

ArrayList

배열의 길이 => .size()

값을 쓸때 => .get(index)

삽입 => .add(index, 데이터값)

삭제 => .remove(index)

전부삭제 => .removeAll(listname)

 

객체 생성할 때

오류는 변수명때문에 떠있는거시다..

List를 사용하여 객체를 생성할 수도 있다.

Linked도 마찬가지

 

 

 

 

 

 

 

제네릭 사용해서 간단한 ArrayList 예제

add (삽입) 기능

 

 

나머지는 과제.

 

 

 

 

직접 해본거

더 간단하게 할 수 있다.

 

 

직접해본거

 

 

 

 

 

 

반복자 ( Iterator )

: 반복자는 컬렉션의 원소들을 하나씩 처리하는데 사용

 

 

 

 

Map

 

 

HashMap

=> 암호화 할때 주로 사용 
ex) a를 넣으면 두칸 Shift해서 저장

ex) 안심클릭 및 인터넷 안전결제(IPS) 서비스로 128bit SSL 암호화 페이지로 넘어갑니다..

 

 

문자열로만 key값을 사용할 수 있다.

 

 

 

 

key값을 전부 뽑고 싶을 때

그냥을 뽑을 수 없다.

=> keySet()을 사용해야한다.

 

 

객체를 지울때 => remove(key)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

반응형