JAVA

· JAVA
이 글을 쓰면서 너무 중구난방 한 글을 작성하지 않나 하는 생각이 머릿속을 계속 접근하고 있습니다.. class 파일의 내부 정의 키워드를 넣지 않는 등 일부 당장 필요가 없다고 판단되는 부분들을 임의로 삭제한다고 삭제하였는데 과연 좋은 판단이었는지에 대해서는 더 생각해보고 이 글을 수정하겠습니다. 0. 들어가며 JVM은 Java Virtual Machine의 약자이다. Virtual Machine이라는 단어에 주목해야한다. VM이라는 건 프로그램을 실행하기 위해 물리적 머신(즉, 컴퓨터)과 유사한 머신을 소프트웨어로 구현한 것을 말한다고 할 수 있다. 요즈음에 와서는 JAVA의 목적성에서 변색된 개념(왜 변색되었다고 말하는지는 추후 조사하여 작성하도록 하겠다..)이긴 하지만 자바는 원래 WORA(Wri..
· JAVA
org.eclipse.ui.internal.console.IOConsolePartitioner 자바로 GUI프로그램(SWT, JFace, RCP)을 만들 때 IOConsole을 붙여 사용하는 경우가 있는데 해당 버퍼사이즈가 초과되면 OOM(Out Of Memory)가 나타난다. 이를 설정하기 위해 해당 클래스에는 setWaterMarks라는 함수가 있다. 해당 함수의 javadoc과 함수 형태는 다음과 같다. /** * Sets the text buffer size for this console. The high water mark indicates * the maximum number of characters stored in the buffer. The low water mark * indicates..
· JAVA
자바에서는 문자열 대소문자 변환에 대해 함수를 지원해줍니다. toUpperCase() javadoc에서 가장 첫 문장을 가져왔습니다. Converts all of the characters in this String to upper case using the rules of the default locale. String에 있는 모든 문자를 default locale의 규칙을 기반해 대문자로 변환해줍니다. 즉 모든 문자를 대문자로 바꿔준다는겁니다. toUpperCase함수의 반환값은 String입니다. 사용법은 다음과 같습니다. String testStr = "PeterJames"; String testStrUpperCase = testStr.toUpperCase(); testStrUpperCase에는 ..
· JAVA
blogs.sap.com/2019/10/07/does-32-bit-or-64-bit-jvm-matter-anymore/ Does 32-Bit or 64-Bit JVM matter anymore? | SAP Blogs 0 Likes 1,907 View 0 Comments blogs.sap.com 위 블로그에 정리가 잘 되어있다고 생각해 나름 요약하며 번역을 해 보았다. 일단 대부분 사람들은 64비트가 32비트보다 크다고 생각해서 64bit JVM의 성능이 32bit JVM보다 훨씬 성능이 좋다고 생각한다. 아쉽게도 64bit JVM이 32bit JVM보다 성능 저하를 보일 수 있다. 퍼포먼스에 대한 문제점이 있다면 왜 64bit JVM을 사용하는가? 32bit JVM 의 최대 메모리 공간은 4gb이다. 그..
· JAVA
1. 타임스탬프란? 특정 시간에 대해 일정한 포맷으로 기록을 한 문자열을 말한다. 일반적이라고 하면 애매하지만 YYYYMMDDHHmmss 포맷을 생각한다면 2019년 4월 18일 15시 30분 23초는 20190418153023 로 기록될 수 있다. 2. 그렇다면 자바에서는 어떻게? Date today = new Date(); SimpleDateFormat formatter = new SimpleDateFormat("yyyyMMddhhmmss"); String timeStamp = formatter.format(today); SimpleDateFormat의 생성자 파라미터에 원하는 포맷을 넣어준다. Oracle의 공식 문서에서 말하는 포맷은 다음과 같다. ※ HH는 24시, hh 는 12시로 나온다.
· JAVA
동일한 데이터 타입을 가진 것들은 모은 집합을 컬렉션이라 부른다. 컬렉션은 알아두면 정말 잘 쓰는 것들이고 그러기 때문에 기본적인 것들이다. 자료구조를 어느 정도 공부한 후 보면 이해가 빨리 된다. 자료구조를 쉽게 쓰라고 만들어 놓은 것들이기 때문에... 아래 표를 살펴보자. 출처 : https://www.javatpoint.com/collections-in-java이고 상당히 정리가 잘 되어있는 사이트이다. 자바에서 제공하는 컬렉션 프레임워크는 아래와 같은 구조를 가진다. 위 표를 말로 풀어 쓰면 아래와 같이 정리가 된다. Collection인터페이스는 Collection을 순회(탐색)하기 위한 Iterable 인터페이스를 상속받고 있다.(인터페이스가 인터페이스를 상속받는 경우는 구현이 아닌 상속으로 ..
· JAVA
SWT를 사용하여 GUI를 만들다 보면 마우스 스크롤 이벤트를 막아야할 때가 있습니다. 막기 위한 코드는 아래와 같습니다. swtObject.addListener(SWT.MouseVerticalWheel, new Listener() { @Override public void handleEvent(Event event) { // TODO Auto-generated method stub event.doit = false; } }); 막아야 하는 객체(swtObject)에 대해 리스너를 등록하고 막아야 하는 이벤트인 SWT.MouseVerticalWheel에 대해 설정해줍니다.
· JAVA
SWT를 이용하여 개발을 하면 종종 막히는 부분들이 있다. 그 중 하나는 방향키의 입력을 사용자로부터 막아야하는데 그 코드는 아래와 같다. swtObject.addListener(SWT.KeyDown, new Listener() { @Override public void handleEvent(Event event) { event.doit = false; } }); 막아야 하는 객체에 대해 listener를 붙여주고 SWT.KeyDown에 대해 설정해주면 된다.
· JAVA
ctrl + shift + t : class 검색 ctrl + h : 전체 검색 (hint 라고 생각하면 금방 외움) ctrl + l : 해당 라인으로 이동(line의 약자인듯) 함수나 변수를 클릭하고 ctrl + shift + h : call hiererchy (해당 변수, 함수가 어디서 호출되고 있는지 확인) ctrl + shift + r : open resource (리소스 검색) (resource의 약자?) ctrl + shift + f : 자동정렬 ctrl + shift + o : import 정리(아직 import안된 것들은 import해주고 미사용 import는 제거)
· JAVA
StringBuffer를 사용하는 이유 Q. StringBuffer가 뭐고 String 과 무슨 차이가 있어요? A. 둘다 문자열 만들어줍니다. 차이점은 String은 immutable 객체입니다. StringBuffer는 아닙니다. Q. 그게 뭔데요 A. String은 immutable(불변적인) 객체입니다. 즉 공간에 한번 잡히면 더이상 그 값이 변하지 않아요. Q. 이렇게 하면 잘 변하는데요? Stringtmp = "abcd"; tmp += "efg"; System.out.println(tmp); A. 그거 내부적으로는 이렇게 진행됩니다. Stringtmp = "abcd"; tmp = newStringBuffer(tmp).append("efg").toString(); System.out.printl..
Berno
'JAVA' 카테고리의 글 목록 (6 Page)