반응형

프로그래밍(~2017) 25

[JAVA] 이클립스에서 주석 이쁘게 달기 (자동완성기능 사용했을때 내용뜨기)

Window -> Preferences -> Java -> Code Style -> Code Templates -> Comments 에서 파일정보 주석 (소스 가장 위 상단을 선택) Types -> Edit /** * @FileName : ${file_name} * @Project : ${project_name} * @Date : ${date} * @작성자 : ${user} * @변경이력 : * @프로그램 설명 : */ 메소드정보 주석 (원하는 함수를 선택) Methods -> Edit /** * @Method Name : ${enclosing_method} * @작성일 : ${date} * @작성자 : ${user} * @변경이력 : * @Method 설명 : * ${tags} */ ${} 내용설명 d..

[자바] MD5 만드는 함수

파일이 바뀌었는지를 확인하기 위해서 사용하였다. 아마존 클라우드랑 로컬 파일시스템이랑 데이터 자동 동기화 프로그램을 작성중인데 최근 수정 날짜로만 파일이 바뀐지를 알아보기는 아주 비효율적이라 파일의 DNA 즉 MD5 코드를 이용하여 파일이 바뀐지 분석하였다. 클라우드에 파일이 생겼는지 삭제됐는지 수정됐는지 알기 위해서 클라우드상의 파일 목록을 로컬에서 저장해두고 N초 마다 목록을 다시 가져와 과거의 목록과 비교하면서 감시하고 있는데... 클라우드상에서 이런걸 지원해주는거 없나?? 시간을 보내주면 그 시간 이후에 파일이 생겼는지, 수정됐는지, 삭제됐는지 아는 방법... 생성, 수정은 최근 수정 날짜로 판단하면 되는데 삭제된 파일은.. 최근 수정 날짜로 판단이 불가하니까.. 에이.. 어째든 아래의 코드가 파..

[자바] wait(), notify() , notifyall() 사용시 주의점 java.lang.IllegalMonitorStateException

자바 wait(), notify(), notifyall() 을 무한 쓰레드의 cpu 점유율을 줄이기 위해 사용하게 되었다. 근데 위 함수를 사용하는 곳에서 자꾸 java.lang.IllegalMonitorStateException 예외가 떴다. 알아보니 wait(), notify(), notifyall()을 사용하는 객체가 synchronized(){} 되어야 했다. 정리 wait(), notify(), notifyall() 사용하는 객체를 synchronized(){} 하여라.. 만약 thread 라는 객체가 있고 이 객체의 wait(), notify(), notifyall() 을 호출하기 위해서는 synchronized(thread) { thread.wait(); } 하라는 말이다.. synchron..

inner 내부 클래스가 존재하는 클래스에서 외부클래스를 나타내는 this와 내부클래스를 나타내는 this- 클래스.this

public class DotThis { void f() { System.out.println("DotThis.f()"); } public class Inner { public DotThis outer() { return DotThis.this; //DotThis.this 는 외부클래스 객체(DotThis)를 나타낸다. //return this; //this 는 내부클래스 객체(Inner)를 나타낸다. } } public Inner inner() { return new Inner(); } public static void main(String[] args) { DotThis dt = new DotThis(); DotThis.Inner dti = dt.inner(); dti.outer().f(); //ou..

android 안드로이드 intent 인텐트 변수 정리

인텐트 컴포넌트 들 간에 작업요청 및 데이터를 전달하는 메시지 작업요청 컴포넌트는 인텐트를 보내기 위해 다음 메서드 호출 startActivity() startService() 수신 컴포넌트 인텐트 필터 intent filter 를 통해 특정 인텐트를 수신하고 작업을 수행 인텐트의 생성 주체 안드로이드시스템 안드로이드 프레임워크 애플리케이션 인텐트 전송메서드 컴포넌트 별로 별도의 메서드 존재 액티비티 Context.startActivity() Activity.startActivityForResult() 서비스 Context.startService() - 초기화 또는 새로운 지시 Context.bindService() - 서비스와의 연결 브로드캐스트리시버 브로드캐스팅 메서드 - 리시버에게 메시지를 보내는..

[자바] 리플렉션(Reflection)에 대해서

Reflection 리플렉션(Reflection)이란 객체를 통해 클래스의 정보를 분석해 내는 프로그램 기법을 말합니다. 약간 어렵죠. 영어 단어로 Reflection은 '거울에 비친 그림자' 또는 '반사' 등의 의미로 사용됩니다. 자세히 관찰하면 자바의 리플렉션은 이 의미를 그대로 따르고 있습니다. 거꾸로라는 의미죠. ▣ 리플렉션(Reflection)이란? ◈ 객체를 통해 클래스의 정보를 분석해 내는 프로그램 기법 일반적으로 여러분들은 클래스를 디자인하고, 클래스의 모든 정보를 담고있는 .class 파일을 만듭니다. 만들어진 클래스를 이용해서 새로운 객체를 선언하고, 그리고 객체의 메모리를 할당하게 됩니다. 그런데 이것을 역으로 생각해 보죠. 만약 객체의 메모리만을 알고 있고, 그리고 이 객체의 형을 ..

[Java] 리플렉션에 대한 재고

Java 리플렉션에 대한 재고(reflection)(1) 일상에서의 리플렉션(reflection)이란 거울 속에 비친 자신의 모습입니다. 프로그래밍 세상에서의 리플렉션은 프로그램이 자신의 모습을 보고 심지어 수정하기 까지 하는 것을 말합니다. Java reflection API는 바로 그런 기능을 언어의 기본 요소인 클래스, 필드, 메소드를 들여다 볼 수 있는 평범한 Java API를 통해 제공합니다. 리플렉션을 이해하는 것은 여러분이 자주 사용하는 툴을 이해하는데 도움이 됩니다. Eclipse가 어떻게 자동완성으로 메소드 이름을 만들어 줄까? Tomcat은 web.xml파일에 있는 클래스 이름을 가지고 웹의 요청을 처리할 서블릿을 실행하는 걸까? Spring은 어떻게 마술 같은 dependency in..

자바 제네릭 관련 정리

자바 제네릭 관련 정리JAVA/제네릭 관련 정리 2008/11/12 13:16 Generics 제너릭 타입(Generic Types)은 주로 자바 컬렉션에서 많이 사용되고 있다. 컬렉션은 자료구조이다. 컬렉션에는 어떤 자료를 담을지 알 수 없으므로 최상위 객체인 Object형태로 저장되고 관리되도록 설계되어 있다. 하지만, 의도하지 않은 자료형이 담기는 경우도 발생하게 된다. 이 때의 오류는 컴파일시에는 알 수가 없고 실행을 시켜보아야만 알 수 있다는 것이 문제점이었다. 제너릭 타입을 사용하면 프로그래머가 원하는 객체의 타입을 명시해서 의도하지 않은 객체는 저장될 수 없도록 컴파일시에 오류를 확인할 수있게 된다. 제너릭클래스 정의하기 제네릭 클래스를 정의하는 방법은 일반적인 클래스를 정의하는 것과 동일하..

반응형