티스토리 뷰

JAVA 160615 1

오늘 알아 볼 것!!


단어* : throw, catch, throws Exception, Integer, DTO

레코드형 기억장소


public static void main(String[] args) throws Exception{ ~ throws Exception //

예외처리*

키보드 or 파일 or 데이터베이스 or 네트워크**로 입력받는 자바를 만들었을 때

외부장치에 이상이 생겼을 때를 대비하여 예외처리를 강요.


** : 이 4가지는 무조건 예외처리를 해줘야 한다.


이것까지 적어야 하나? 애매한 것들-

예외처리는 Exception을 가지고 있고

exception은 많은 자식클래스를 지니고 있다.

throw, catch 방법도 있다.


int a = 10, b = 3;

int re = a / b; //직접표현 방식보다는 간접표현 방식을 추천.

예를들어 a와 b를 엄~청 긴 코드에서 여기저기에 사용했었는데 b의 값이 3이 아니라 4였을 경우

b의 값만 바꿔주면 되기 때문, (b가 아닌 3을 직접 다 줬다고 한다면 일일이 전부 바꿔줘야한다.)


Exception 순서를 주의하라.

catch (Exception e){

}catch(ArithmeticException e){

}catch(NullPointerException e){

}catch (ArrayIndexOutOfBoundsException e) {}

이렇게 있으면 맨위에서 다 걸려져서 밑은 수행이 안된다.


finally{}는 에러유무와 상관없이 반드시 수행한다.





Collection(자료구조)

종류 - 리스트류, 맵류

Interface Collection<E>

All Known SubinterfacesList<E>, Queue<E>, Set<E>, SortedSet<E> …

All Known Implementing Classes:

ArrayListEnumSetHashSetLinkedHashSetLinkedListStackTreeSetVector …

 

Interface Map<K,V>

All Known Subinterfaces: ConcurrentMap<K,V>, SortedMap<K,V>

All Known Implementing Classes:

EnumMapHashMapHashtableTreeMap …






지식에 도움 될 것 같아

기본형을 자동으로 참조해주는 Boxing

참조형으로 바뀌어있는 참조형자료를 기본형으로 돌리는 것을  unBoxing

때문에 wrapper클래스를 안씀.


제네릭은 컬렉션에 들어갈 타입을 제한하려고 쓴다.

<Object>는 슈퍼클래스.


<한번 참고해보는 것>








import java.util.HashSet;

import java.util.Iterator;

import java.util.Set;



public class TestSet {


public static void main(String[] args) {

// Set : 중복 불가, 순서X = HashSet 클래스가 일반적

//컬렉션클래스<제네릭>    HashSet<Object>

HashSet<String> list = new HashSet<>();

//list.add(1); //숫자1이 HashSet에 들어가면 숫자가 아니라 객체, 오브젝트로 변한다.

list.add("일");

list.add("lee");

list.add("kim");

list.add("park");

list.add("choi");

list.add("lee");

list.add("kim");

System.out.println(list.size());

list.remove("일");

System.out.println(list.size());

list.remove("kim");

System.out.println(list.size());

//list.clear();

//System.out.println(list.size());

print(list);

System.out.println();

print(list.toArray());

}

public static void print(Set set){

Iterator<String> iter = set.iterator();

//Iterator iter = set.iterator();

while(iter.hasNext()){

String ss = iter.next();

//String ss = (String)iter.next();

System.out.println(ss);

}

}

public static void print(Object[] obj){

int count = obj.length;

for (int i = 0; i < count; i++){

System.out.println(obj[i]);

}

}

}

 






예외처리



ArrayIndexOutOfBoundsException :: 배열 오류 예외 처리

ArithmeticException ::

NullPointerException :: Null 값 예외 처리

Exception :: 모든 에러 감지

fianlly :: 에러유무와 상관없이 무조건 수행



출력 정리~~~~

System.out.println(list.size());        //갯수

System.out.println(list.contains("kim")); //있다 없다(true, false)

System.out.println(list.indexOf("park"));    // "park" 오브젝트 뺀다.

System.out.println(list.get(1)); //하나만 빼는거(?)



'📁 공부정리 > JAVA' 카테고리의 다른 글

JAVA 160621 Swing  (1) 2016.06.21
JAVA 160620 Thread , Panel  (0) 2016.06.20
JAVA 160614  (0) 2016.06.14
JAVA 160613 interface, implements  (0) 2016.06.13
for문 기본개념  (1) 2016.06.13

Recent Comments