자바의 Copy by Reference 개념을 이해하기 위해서 만든 코드임. 또한, 깊은 복사를 이용한 결과 값을 보이는 예제도 함께 구현함. MyObject의 deep clone 구현에서는 wildcard type을 적용함. MyOject 를 상속한 MyObjectExt에 적용될 수 있는 사항도 포함하고 있음. deep clone의 경우에는 MyObject를 상속한 모든 클래스에 대해서 deep clone을 수행할 수 있도록 한다. deep clone시에는 MyObject의 필드 정보에 대해서만 clone을 수행하지만, reflection 정보를 확장해서 더욱 기능을 높일 수 있다. package application; import java.lang.reflect.Constructor; import j..
Application 이 종료될 때 JVM에 의해서 종료되는 Thread를 말한다. 보통 사용용도는 resource manager 또는 service 를 수행하는 중요도가 낮은 역할의 실행을 무한으로 돌릴때 사용한다. 가장 대표적인 예가 garbage collector 이다. Java has a special kind of thread called daemon thread. Only executes when no other thread of the same program is running. JVM ends the program finishing these threads, when daemon threads are the only threads running in a program. Daemon thre..
아래의 예제는 TreeNodeCollection 을 Podcast List로 변환하는 LINQ 메소드 조합이다. Collection 은 IList 를 IList 는 IEnumerable, ICollection 을 상속함. 따라서 이를 List 인스턴스로 변환하여 return 하는 구성을 갖을 수 있음. var podcasts = subscriptionView.treeViewPodcasts.Nodes .Cast() .Select(tn => tn.Tag) .OfType() .ToList(); Nodes로 부터 Collection 인스턴스를 받고 IEnumerable를 받음 여기에서 Treenode안에 있는 Tag 에 연결된 인스턴스들을 모두 선택하고 PodCast 타입의 IEnumerable 인스턴스를 받아..
Select Tools >> External Tools in Visual Studio Click Add Title: I use Visual Studio Command &Prompt &P Makes P a alt-shortcut key (when menu active) I originally used C, but that conflicts with the existing shortcut for Customize Command: C:\Windows\System32\cmd.exe Arguments: \k "C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\Tools\vsvars32.bat" \k keeps a secondary session active..
Java의 String 변환 ( 인코딩, 디코딩 )을 수행할 때에 문자열을 default charset을 기반으로 수행하게 된다. default charset 이 컴퓨터 시스템에 종속되어 있다고 생각했으나, 그게 아니라 파일의 인코딩 정보를 이용해서 한다는 점이다. 기본 Charset을 쉽게 변경하는 방법은 이클립스의 Edit -> Set Encoding에서 Other를 클릭하면 선택할 수 있는 인코딩 옵션들을 확인할 수 있다. 원하는 방식의 인코딩으로 변경할 수 있다.
RTM DOS 프로그램을 WINDOWS로 변환하면서 발생하는 마지막 링크오류 2019. DynArray template을 이용하는 Polyhedra의 멤버 변수 두개는 아래와 같다. DynArray mVertice; DynArray mPolygons; 하지만, 이와 관련된 에러 인듯하나 계속해서 아래의 에러가 발생함. 오류 1 error LNK2019: "public: __thiscall DynArray::DynArray(int,int)" (??0?$DynArray@Vvec@@@@QAE@HH@Z) 외부 기호(참조 위치: "public: __thiscall Polyhedra::Polyhedra(void)" (??0Polyhedra@@QAE@XZ) 함수)에서 확인하지 못했습니다. C:\Users\Yuseok..
출처: Pluralsight Making .Net Application Faster 참고 : HashSet Hashset : 중복된 데이터 없이 해싱에 의해 데이터를 저장하는 자료구조. 기본적으로 데이터의 저장순서는 알 수 없다. (Hashset은 Hashing을 이용해서 데이터만 저장함.) 해싱(Hashing) : 저장을 위해서 주소를 결정하는 방법. List는 데이터를 순서대로 저장 (배열, ArrayList, Stack, Queue, Deque, (LinkedList만 빼고) 해싱은 %4로 나눈 것을 이용한 나머지로 정보를 저장함. (결과를 담을 공간이 필요) 해싱을 쓰는 이유 : 현재 이 방식이 가장 검색이 빠름. (모든 데이터의 접근속도가 일정. 나머지 구하는 계산 + 주소찾기. 메모리의 ..
1. Parsing Numeric types using NumberStyles 각 기본 자료형에는 Parsing 함수를 갖고 있다. 문자열을 입력받고 이를 맞는 형식의 숫자로 변환하는 함수이다. Pasring 함수에 NumberStyle 옵션을 이용하면 더욱 쉽게 pasring을 수행할 수 있다. NumberSytle의 옵션들이다. 아래의 PremadeComposites 예문은 여러 NumberStyle option을 중첩하여 하나로 만들어진 옵션을 이용한 Pasring 예문이다. 또한, Custom Numberformat 을 설정하여 Parsing 을 수행할 수도 있다.