JAVA
-
[JAVA]LINUX 터미널에서 클래스 파일 실행 하기JAVA/in 기초 2015. 5. 13. 17:48
LINUX 터미널에서 클래스 파일 실행하기 LINUX에는 nmap이나, telnet 등 네트워크 관련 모듈은 설치가 되지 않아서 간단하게 클래스 파일을 이용하여 oracle 접속 가능 여부를 확인해야 하는 일이 있었다. 쉽게 생각하고 접근을 하였는데, ojdbc6.jar 파일을 classpath에 추가 해서 진행을 하면 계속 main을 못찾는다는 오류를 만났다. 옛날에 분명 많이 해본 일이었는데(약 8년전) 구글 검색을 하고 이래 저래 2시간 정도를 소요 하고 나서야, 원인을 찾아 진행 하였다. 매일 IDE 툴에 익숙해지니 터미널이나 커맨드라인에서 작업은 어렵게 느껴 진다. # LINUX의 경우 $> javac -cp .:/ojdbc6.jar OracleTest.java $> java -cp .:/ojd..
-
[발번역]언제 ArrayList 대신 LinkedList을 쓰나요?JAVA/in 기초 2014. 12. 25. 00:57
질문 : 나는 대부분 간단하게 List names = new ArrayList() 이렇게 사용한다.나는 이식성이 좋은 인터페이스(Interface) 타입을 사용한다, 그래서 나의 코드가 변경이 필요할 때 변경 할수 있다. 언제 LinkedList를 ArraryList 대신 쓰나요? 또는 반대로 사용해야 하나요? 요약 답변 : ArrayList 와 ArrayDeque가 LinkedList 보다 더 많이 사용 되는 것이 선호 된다. 확실하진 않다. ArrrayList 에 대해 이야기 해보자 LinkedList와 ArrayList는 List Interface를 다르게 구현한 것이다.LinkedList는 이중 연결 목록 방식으로 구현 되어 있고, ArrayList는 동적으로 크기가 변환되는 배열 방식으로 구현 ..
-
[JAVA8]자바의 다중 상속 관련 내용JAVA/in 기초 2014. 12. 19. 13:01
자바7 버젼까지 다중 상속의 개념 보다는 확장이라는 개념이 지배적이었다. 인터페이스를 다중으로 상속받아 좀더 확장된 인터페이스가 되기 때문이다. 그런데 자바8에서는 default method를 이용한 다중상속이 가능하다. 다음은 그 예제를 구현간단하게 구현 하여 보았다. 비행카(PlaneCar) 라는 다중상속을 받은 인터페이스가 있고, 비행기(Plane)와 자동차(Car)라는 인터페이스가 있다 각 인터페이스는 다음과 같은 기능을 가진다. [비행카 클래스도] 비행카 인터페이스 에서는 다중상속에는 다이아몬드 문제라는 것이 있다, 그것을 어떻게 처리하는지를 보여주기 위해 carry()라는 default method를 추가 하였다. public interface Plane{ default void fly(){ ..
-
[JAVA8]Stream 맛보기JAVA/in 기초 2014. 12. 2. 10:04
JAVA8에서 추가된 Stream 인터페이스는 많은 기능을 제공 합니다. 특히 정렬, 필터, 통계 등을 람다(LAMBDA)표현식을 이용하여 간단하게 표출 하도록 도와 줍니다. JAVA 5,6,7 에서의 방식 List humanList = initialList(); //남자인 사람의 수 int manCount = 0; for(Human h : humanList){ if(h.isMan() ){ manCount ++; } } //10세 이하인 사람의 나이 합산 int below10_totalAvg = 0; for(Human h : humanList){ if(h.getAge() < 10 ){ below10_totalAvg += h.getAge(); } } assertEquals(below10_totalAvg, ..