본문 바로가기

개발자41

Arraylist , Vector , Object[] , Hashmap , Treemap 중에서 어떤 것을 선택 할 것인가? 성능의 관점은 3가지 정도로 나눠야 합니다. - 저장시간(insert time) - 검색시간(seek time) - 읽는 시간(read time) 각 컬렉션 클래스들은 위의 관점에 대해서 장단점을 가지고 있습니다. Hash계열(Hashtable, HashMap)이 검색에서는 제일 빠릅니다. 대신 저장시간은 제일 오래걸립니다.(전화번호부와 같이 검색이 중요한 곳에서는 유리하고, 증권시스템같이 동시에 많은 수의 데이터를 처리해야하는 경우에는 불리하겠죠.) TreeMap과 같은 Sorted계열은 저장시간은 Hash계열보다 빠르고, 검색시간은 Hash계열보다 조금 느린 저장과 검색에 균형잡힌 성능을 제공합니다. TreeMap은 정렬된 상태로 데이터를 저장하기 때문에, 범위검색(Range Search)기능을 제공.. 2017. 9. 18.
자바 알고리즘의 캡슐화 / 템플릿 메소드 패턴 자바로 알고리즘을 구현 해야 할때 캡슐화의 개념을 사용하면 코드를 작성하는데 도움이 된다. ●캡슐화 : 관련 있는 메소드나 변수들을 하나의 클래스로 묶는 것. 예제) 만약 사람을 자바 프로그램으로 모델링 한다면 사람이 하는 행동인 잠자다 숨쉬다 밥먹다 메소드 들을 사람 클래스 안에 하나로 묶어놓는다. 사람의 키 몸무게와 같은 변수들도 사람 클래스 안에 같이 들어가게 된다. 이렇게 키, 몸무게라는 변수 잠자다 , 숨쉬다 , 밥먹다 라는 메소드 들을 사람 클래스 안에 구현하고 묶는 것을 캡슐화 라고 한다. ●템플릿 메소드 패턴 템플릿은 보통 뭔가를 계속해서 그려내거나 만들어 낼 수 있는 틀을 말한다. 템플릿 메소드 패턴 : 알고리즘의 구조를 메소드에 정의하고 하위 클래스에서 알고리즘 구조의 변경없이 알고리즘.. 2017. 9. 17.
자바 게터 세터 / java getter setter / 자바 게터와 세터 생성하는 쉬운 방법 자바 게터와 세터 Java Getter Setter 자바의 클래스에는 속성(변수)과 메소드(함수)가 존재합니다. Person p1 = new Person(); Person 객체를 다음과 같이 인스턴스화 할 수 있습니다. p1은 Person객체의 인스턴스로서 Person 객체의 주소가 저장이 됩니다. 이렇게 저장된 주소를 통해서 개발자는 Person 객체의 속성과 메소드에 접근 할 수 있습니다,. 자바에서는 private을 사용해서 멤버 변수로의 접근을 제어합니다. Private 으로 선언된 인스턴스 필드에 접근하기 위해서 Getter와 Setter를 사용합니다. Setter는 Main 함수에서 인스턴스 필드에 접근해서 사용하는 함수입니다. 매개변수로 멤버 변수를 초기화합니다. Getter도 Main 함수.. 2017. 9. 15.
super 키워드 this 키워드 사용해서 메소드 호출하기 / 코드 간소화하기 super 를 사용해서 작성한 코드를 this 를 사용해서 고쳐보았습니다. this 키워드는 메소드가 들어있는 클래스를 지칭하는 키워드 입니다. this로 가리킬 클래스 { 사용할 메소드 0(파라미터 1) { this(파라미터 1에 대입 될 값, 파라미터2에 대입 될 값 , 파라미터3에 대입 될 값) } 사용할 메소드 1(파라미터 1, 파라미터 2, 파라미터3) { System.out.println("메소드가 호출 되었습니다."); } } this(파라미터 1에 대입 될 값, 파라미터2에 대입 될 값 , 파라미터3에 대입 될 값) 이렇게 코드를 작성하게 되면 파라미터의 개수가 3개인 사용할 메소드 1을 사용할 메소드 0에서 호출해서 사용하게 됩니다. 여기서 this 는 this로 가리킬 클래스를 가리킵니.. 2017. 9. 15.
java 프로젝트 import 자바 프로젝트 불러오기 자바 프로젝트 폴더를 이클립스에서 보는 방법에 대해서 알아보겠습니다. 자바 프로젝트를 이클립스에서 불러오려면 import 를 하시면 됩니다. File 에서 Import 를 클릭하세요. Exsiting Projects into Workspace 를 클릭합니다. 1번의 Browse 를 눌러서 경로를 입력하시고 2번 Finish를 클릭하면 프로젝트 불러오기가 완료됩니다. 설명이 부족한 부분은 없으셨나요? 댓글이나 이메일로 질문해주시면 답변드리겠습니다. 감사합니다. 이메일 : forsqna@gmail.com 2017. 9. 14.