Java

· java
throw와 throws 사용목적이 다르니 용어 확실히 정리해두기 throw 예외를 일부러 발생시키기 위해 사용 throw : 1인칭. 내가 예외를 발생시킴 throws 예외 객체를 호출한 쪽에 전달하기 위해 사용 throws : 3인칭. 제 3자가 처리하도록 던짐 강제로 예외를 발생시킬 때는 throw를 사용해서 예외객체를 생성하면 된다 강제로 예외 발생시키기 개발하다보면 code에서 Exception이 의심되는 부분에 예외처리를 해주게 된다(try-catch). 이 때 예외 발생의 처리부분을 테스트하기 위해 직접 Exception이 발생하는 상황을 만들수도 있겠지만, 직접 Exception을 throw 해서 발생시킬 수도 있다. try{ //강제로 예외 발생 Exception e = new Excep..
· java
[Java]컬렉션 프레임워크 선택 기준 개요 어느 상황에 어떤 컬렉션 프레임워크를 쓰면 좋을지 정리 - 참고 : I : 인터페이스, C : 클래스 컬렉션 프레임워크에 대해 간단히 설명 다수의 데이터를 쉽고 효과적으로 처리할 수 있는 표준화된 방법을 제공하는 클래스의 집합 자료구조와 알고리즘을 구조화하여 클래스로 구현해 놓은 것 프레임워크 종류 정리 [I] List 중복이 가능하고, 순서가 있는 데이터의 집합 [C] ArrayList 특정 원소 조회가 많은 경우 사용하는 것을 추천 리스트 자료구조를 사용한다면 기본선택! 리스트 자료구조를 사용한다면 기본적으로 선택 배열을 이용해 만든 리스트 데이터의 저장순서가 유지되고 중복을 허용 임의의 요소에 대한 접근성이 뛰어남 (인덱스로 조회) 단방향 포인터구조로 자..
· java
개요 아래와 같은 소스코드 파악을 위해 Java에서 컬렉션 프레임워크를 사용해서 데이터를 다루는 법에 대해 배워보자 // hm = HashMap Set s = hm.entrySet(); Iterator it = s.iterator(); while(it.hasNext()){ Map.Entry m = (Map.Entry)it.next(); String value = m.getValue(); ... } 1. Java Collection Framework 자료구조 종류의 형태들을 자바 클래스로 구현한 모음집이라고 보면 된다 Tip ) 컬렉션 프레임워크에 저장할 수 있는 데이터는 오로지 객체(Object) 뿐이다 즉, primitive 타입은 Wrapper타입으로 변환하여 객체형으로 Boxing하여 저장하여야 한..
· java/error
NoClassDefFoundError : 일반적으로 해당 에러는 컴파일 시점에 존재했던 클래스가 런타임시 존재하지 않으면 발생하는 에러이다. 즉, 정상적으로 컴파일 후 런타임에서 Classpath에서 Class C가 없어진다면 JVM이 Class C를 로드할 수 없기 때문에 해당 에러가 발생한다. 하지만 해당 에러는 단순히 classpath의 문제로 발생하지는 않는다. 비슷한 에러와 함께 살펴보자 1. java.lang.ClassNotFoundException 이 Exception은 Classpath에 로드하고자 하는 Class가 발견되지 않았을 때 발생한다. 보통 빌드에 문제가 있는 경우로, clean이나 Class 파일 삭제 후 재빌드를 수행하여 해결한다 2. java.lang.NoClassDefFo..
· java
개요 자바에서 사용하는 자료구조인 List에 대한 모든 것을 정리! 1. List와 List형 1-1. List row type이라고 부름 지양해야할 타입임 사유 : 리스트에 새로운 element를 추가할 때, 타입체크가 안돼서 문제가 생길 수 있다 primitive타입은 못 넣는다. 즉, int 타입은 못쓰고 wrapper 클래스인 Integer 타입만 쓸 수 있다 1-1-1. 제네릭 (Generic) list의 Interface를 확인해보면 . 즉, 제네릭 형태를 받도록 되어있다 public interface List extends Collection { ~ } 제네릭(Generic)은 클래스 내부에서 사용할 데이터 타입을 외부에서 지정하는 기법을 의미한다 즉, 클래스를 정의할 땐 데이터 타입을 확정..
· java
개요 api로 받아온 String값을 구분자(,(쉼표))로 split하여 배열에 담아 작업을 하는 도중 예상하지 못한 값을 반환하는 것을 발견 다신 같은 실수를 하지 않기 위해 포스팅,,, 코드 예시 String resultStr = apiObj.get("rel_list"); // -> 받아오는 값 예시 "1-1, 1-2, 1-3" String[] resultArr = resultStr.split(","); // -> ["1-1", "1-2", "1-3"] // 그리고 문제가 되었던 부분... int arrLength = resultArr.length; for(int i = 0; i
· java
1. 개요 api통신으로 받아온 데이터를 ajax를 이용하여 비동기 방식으로 받아와 사용하고 싶음 사용하는 언어는 java, jsp 2. java에서 json 데이터 다루기 -- 예시 testjsonObj = { "key1" : "val1", "key2" : [1, 2, 3], "key3" : {"obj1" : "objval1"}, "key4" : [ {"sub1" : "subval1"}, {"sub2" : "subval2"} ] } 참고로, {} 안에 담겨있으면 JSONObject 형이고 [] 안에 담겨있으면 JSONArray 형이다 json 데이터형에 대한 포스팅 : 2.1. jsonObject, jsonArray에 담아서 값 사용하기 // 1. JSONObject 안에 있는 JSONObject 추출..
이레몬스터
'Java' 태그의 글 목록