Language(99)
-
Version Interface
[이미지 출처 - 웹툰 작가 꿀똥이] 인터페이스를 바꾸고 싶은데..바꿀 수 없는 경우에는 어떻게 해야할까?인터페이스에 어떤 연산을 추가하고 싶을 때가 바로 그런 경우다.새로운 인터페이스를 선언해서 기존 인터페이스를 확장(상속)한 후 새로운 연산을 추가할 수는 있다.반드시 다운캐스트해서 사용해야 한다는 점에 주의하자!출처 : 켄트 벡의 구현 패턴 중에서!내용을 바탕으로 코드로 구현해봄! ㅎㅎㅎ
2014.06.19 -
[Java] JVM 메모리 구조
응용프로그램이 실행되면, JVM은 시스템으로부터 프로그램을 수행하는데 필요한 메모리를 할당받고 JVM은 이 메모리를 용도에 따라 여러 영역으로 나누어 관리한다.아래의 그 중 주요한 3가지 영역이다. [참고 : cv-클래스변수, lv - 지역변수, iv - 인스턴스 변수를 뜻함.]1) 메소드 영역 프로그램 실행 중 어떤 클래스가 사용되면, JVM은 해당 클래스의 클래스파일(*.class)을 읽어서 분석하여 클래스에 대한 정보(클래스 데이터)를 이곳에 저장한다. 이때 그 클래스의 클래스 변수(Class Variable)도 이 영역에 함께 생성 된다. 2) 힙(heap) 인스턴스가 생성되는 공간, 프로그램 실행 중 생성되는 인스턴스는 모두 이곳에 생성된다. 즉, 인스턴스 변수(Instance Variable)..
2014.05.15 -
[영어 공부] 영어의 여신 시작!!
영어의 여신!! 10만원짜리 VIP쿠폰이 당첨이 되어서 공부 시작! ㄱ ㄱ~ http://englishforyou.co.kr/ I can speak in English very well~~~~~:D 오늘부터 시작~~~~~~!! ㅎㅎㅎㅎ
2014.05.10 -
sort 관련(vo)
이번 포스팅은 sort 관련 입니다. 특히, vo sortting 하는 것을 한번 알아 보겠습니다. 우선 테스트로 vo를 만들어 List에 담고나서 제대로 담겼는지 size를 한번 재보도록 하겠습니다. [간단 테스트 소스 작성 시작!] @Test public void insertVo(){testList = new ArrayList();System.out.println("List Size(1) :"+testList.size());for(int i=0; i < 2; i++){testVo = new TestVo();if(i == 0){ testVo.setIndexKey("DSP001"); testVo.setSortStandard("330");}else{testVo.setIndexKey("DSP002");tes..
2014.03.19 -
단어 카운트 - 첫번째에 걸리는 것만..
상황 : log 파일이 있다고 가정 해 보자. 내가 원하는 단어가 이 파일안에 전체 몇개가 있는지 또는 패턴으로 이루어진 로그 파일이기때문에 첫 단어별로 카운트를 셀 수 도 있을 것이다. 고로 여기에서 해보고자 하는 것은 로그 파일을 분석하기 위해 단어별로 카운트를 세어보려고 한다. [파일 내용 : 대충 어디서 긁어왔다..] 다운로드 : [org.mybatis.spring.SqlSessionUtils][ INFO] - Creating a new SqlSession[org.mybatis.spring.SqlSessionUtils][ INFO] - SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@4ccdd1f] was not registere..
2014.03.19 -
[Ace-T의 기초튼튼] for문 잘 알고 쓰자
[Ace-T의 기초튼튼] for문 잘 알고 쓰자 for문을 조금만 수정하면 좋은 성능을 낼 수가 있다. 간단하게 알아보도록 하자. 배열, List, Vector등등 for문안에서 size, length 등을 구하지 말고, 미리 구한 뒤에 for문 안에서 써먹으면 성능이 좋아짐을 알 수가 있다. package kr.pe.acet; public class ForTest { public long forCase01(){ int loopCnt = 10000000; Vector vc = new Vector(); for(int i=0; i > loopCnt; i++){ vc.add("P"+i); } Long startTime1=System.nanoTime(); for(int a=0; a < vc.size(); a++..
2013.12.16