[JAVA]#2_이클립스 단축키 모음

Posted by yvette.theomom's blog
2011. 8. 10. 02:13 개발/025_JAVA
1.
출처 : http://blog.bagesoft.com/trackback/797


===== 실행 =====
1. Ctrl + F11 : 바로 전에 실행했던 클래스 실행
2. Alt + Shift + x 후에 j : 현재 소스코드 실행 (메인 메서드가 있는 곳에서)

===== 소스 네비게이션 =====
1. Ctrl + 마우스커서(혹은 F3) : 클래스나 메소드 혹은 멤버를 상세하게 검색하고자 할때
2. Alt + ->, Alt + <- : 이후, 이전
3. Ctrl + o : 해당 소스의 메소드 리스트를 확인하려 할때
4. F4 : 클래스명을 선택하고 누르면 해당 클래스의 Hierarchy 를 볼 수 있다.

===== 문자열 찾기 =====
1. Ctrl + k : 찾고자 하는 문자열을 블럭으로 설정한 후 키를 누른다.
2. Ctrl + Shift + k : 역으로 찾고자 하는 문자열을 찾아감.
3. Ctrl + j : 입력하면서 찾을 수 있음.
4. Ctrl + Shift + j : 입력하면서 거꾸로 찾아갈 수 있음.
5. Ctrl + f : 기본적으로 찾기

===== 소스 편집 =====
1. Ctrl + Space : 입력 보조장치(Content Assistance) 강제 호출 => 입력하는 도중엔 언제라도 강제 호출 가능하다. (이게 진짜 유용한 것 같다. 거의 모든 소스 자동완성 기능을 담당한다. 예를들어 import되지 않은 패키지의 클래스를 사용할경우 그냥 클래스 이름 타이핑하고 Ctrl+Space하면 import구분을 자동 추가해준다)
2. F2 : 컴파일 에러의 빨간줄에 커서를 갖져다가 이 키를 누르면 에러의 원인에 대한 힌트를 제공한다.
3. Ctrl + l : 원하는 소스 라인으로 이동
로컬 히스토리 기능을 이용하면 이전에 편집했던 내용으로 변환이 가능하다.
4. Ctrl + Shift + Space : 메소드의 가로안에 커서를 놓고 이 키를 누르면 파라미터 타입 힌트를 볼 수 있다.
5. 메서드나 제어문 자동완성후 tab키로 이동하면서 각 인자들을 입력한다.
6. 줄단위 구간 선택후 Alt + Shift + 화살표 위, 아래 : 복사된다.

===== 템플릿 사용 =====
1. sysout 입력한 후 Ctrl + Space 하면 System.out.println(); 으로 바뀐다. (syso까지만 입력해도 됨)
2. try 입력한 후 Ctrl + Space 하면 try-catch 문이 완성된다.
3. for 입력한 후 Ctrl + Space 하면 여러가지 for 문을 완성할 수 있다.
4. 템플릿을 수정하거나 추가하려면 환경설정/자바/편집기/템플리트 에서 할 수 있다.

===== 메소드 쉽게 생성하기 =====
1. 클래스의 멤버를 일단 먼저 생성한다.
2. override 메소드를 구현하려면 : 소스->메소드대체/구현 에서 해당 메소드를 체크한다.
3. 기타 클래스의 멤버가 클래스의 오브젝트라면 : 소스->위임메소드 생성에서 메소드를 선택한다.

===== organize import =====
1. 자바파일을 여러개 선택한 후 소스 -> 가져오기 체계화 해주면 모두 적용된다.

===== 주석 처리 =====
2. Ctrl + / 해주면 여러줄이 한꺼번에 주석처리됨. 주석 해제하려면 반대로 하면 됨.

===== 소스 코드 형식 및 공통 주석 설정 =====
1. 환경설정 -> 자바 -> 코드 스타일 -> 코드 포멧터 -> 가져오기 -> JYJ프로파일.xml 을 불러다가 쓰면 된다.
2. 또한 다수의 자바파일에 프로파일을 적용하려면 패키지 탐색기에서 패키지를 선택한 후 소스 -> 형식화를 선택하면 된다.
3. 환경설정 -> 자바 -> 코드 스타일 -> 코드 템플리트 -> 가져오기 -> JYJ템플리트.xml 을 불러다가 쓰면 된다.

===== 에디터 변환 =====
1. 에디터가 여러 파일을 열어서 작업중일때 Ctrl + F6 키를 누르면 여러파일명이 나오고 F6키를 계속 누르면 아래로
2. Ctrl + Shift + F6 키를 누르면 위로 커서가 움직인다.
3. Ctrl + F7 : 뷰간 전환
4. Ctrl + F8 : 퍼스펙티브간 전환
5. F12 : 에디터로 포커스 위치

===== JAVA Doc 생성 =====
1. 프로젝트 -> Javadoc 생성

===== 내보내기 =====
2. 해당 프로젝트를 zip 행태로 압축해서 보관할 수 있다.

===== 자바 찾아보기 perspective =====
3. 해당 프로젝트를 보다 편리하게 한번 둘러보는데 좋다.

===== 스크랩북 =====
1. 스크랩북을 이용하면 자바파일을 만들어 테스트 해보지 않고도 간단하게 테스트 해 볼 수 있다.
2. 패키지 탐색기에서 신규 -> 기타 -> 자바 -> 자바 실행/디버그 -> 스크랩북 페이지 선택

===== 디버그 =====
1. F5(Step Into) : 현재의 명령문이 호출되는 메소드 속으로 진행하여, 그 첫 문장을 실행하기 전에 멈춘다.
하지만 자바 라이브러리 클래스 수준까지 들어가므로 단계필터 사용을 체크(Shift+F5)를 하면 필터를 설정한
클래스에 대하서는 Step Over 기능과 같은 기능을 수행한다.
2. F6(Step Over) : 현재의 명령문을 실행하고 다음 명령문 직전에 다시 멈춘다.
3. F7(Step Return) : 현재의 메소드에서 리턴한 직후에 다시 멈춘다.
4. F8(Resume) : 멈추어 있던 쓰레드를 다시 계속 실행한다.
5. Display view(표시) : 창 -> 보기표시 -> 표시 선택하여 소스상에서 필요한 부분을 선택해서 실행시켜 볼 수 있다.
한 순간의 값만 필요할 때 볼 수 있는 반면에 아래놈은 계속적으로 값이 변하는 것을 확인 할 수 있다.
6. Expression view(표현식) : 복잡한 식 혹은 객체를 디버깅 하면서 계속 볼 수있는 창이다.
마우스 오른버튼 -> 감시 표시식 추가 선택한 후 사용한다.
환경설정 -> 자바 -> 디버그 -> 세부사항 포멧터 선택 후 보기 편한 식으로 편집하면 Expression View 에서 결과를
실시간으로 확인 할 수 있다.
7. 디버깅 하면서 소스를 수정하고 프로그램을 다시 시작할 필요 없이 계속 디버깅을 진행 할 수 있다.
다만 메소드를 추가하거나 필드를 추가하면 프로그램을 다시 시작해야 한다.
8. Drop to Frame(프레임에 놓기) 는 정말 모르겠다.
9. 디버깅 작업을 할때 해당 라이브러리의 소스코드를 첨부하지 않으면 진행상황을 볼 수 없을 경우
해당 라이브러리에 소스코드를 첨부할 수 있다. 해당 프로젝트 -> 특성 -> Java 빌드경로 -> 라이브러리 -> 소스참조
편집 버튼을 눌러서 첨부 한다.

===== 도움말 =====
"JDT 팁과 요령"이라고 치면 여러가지 흥미로운 팁이 나온다.

===== JUnit =====
별로 추천하고 싶지 않은 툴임.

===== Refactoring =====
1. Pull Down : 수퍼클래스의 멤버나 메소드를 하위 클래스로 내리는 행위
2. Push Up : 하위 클래스의 멤버나 메소드를 상위 클래스로 올리는 행위

===== CVS =====
1. CVS 서버로는 윈도우에 CVSNT 최신버젼을 설치하고, [컴퓨터 관리]를 통해서 사용자를 추가한다.
- CVSNT 를 설치할때 윈도우의 경우 Repositories 를 추가할때 접두어를 사용하지 말고 디렉토리 풀이름(d:/cvs) 이런식
으로 등록해야 Eclipse 와 에러없이 동기화가 잘 된다.
2. Eclipse 에 CVS 저장소 perspective 에서 새로운 저장소를 등록한 후 HEAD 에서 해당 프로젝트를 체크아웃하면
자바 perspective 에 등록되는 것을 확인할 수 있다.

출처 : Tong - bunny827님의 이클립스통 , 몇가지 수정하고 추가해봤습니다. 빨간 글씨는 제가 자주 쓰는 기능입니다.



[JAVA] #1. JDK bin directory 의 역 어셈블러_javap.exe

Posted by yvette.theomom's blog
2011. 8. 10. 01:06 개발/025_JAVA

javap.exe
ex) c:\> javap Hello > Hello.java 단, 선언부만 저장된다.

[JAVA] editplus 설정과 첫 프로그램작성

Posted by yvette.theomom's blog
2009. 11. 10. 19:29 개발/025_JAVA
public class Test2 { // Test2 라고 하는 class 이름과 file 의 이름은 같아야한다.
 //field
 //constructor
 //method
 //main
 public static void main(String[] args) {// 자바에서 스스로 실행가능한 클래스를 만들려고 하면
     //반드시 main 을 만들어 주어야 한다.
  System.out.println(("2*5=" + 2*5)); // 문자열과 정수값을 연결해서 찍고자할때 + 연산자를
                                      // 사용한다.
  //문자열과 문자열
  System.out.println("hello" + "  " + "java");
 }
}

[JAVA] 파일의 명명법과 주석처리

Posted by yvette.theomom's blog
2009. 11. 10. 12:05 개발/025_JAVA

#. Class 명명법의 규칙

1. 대문자(첫자) ===> 반드시는 아니다. 하지만, Sun 이 제공한 Api  Class 를 대문자로 시작한다.
                       ===> Api 의 내용을 정확히 확인하기 위해서 (중요중요!!!)
                              -. API 란, Sun 사에서 제공하는 Class 뭉치의 사전이다. 

2. 숫자로 시작하지마라.
3. 특수문자 사용금지.(_(언더스코어), $ 는 예외)

#. JVM 의 정의

 - 자바가상머신
 - 증거: 자바가 단순언어가 아니다.
            자바는 단순언어가 아니라 < System > 이다.
       
        - 역할: 자바의 환경을 정의한다.(JRE)
                   자바언어에서 사용가능한 spec 을 제공한다.


#. 주석

 -. 주석은 JVM 이 인식하지 못하는 코드이다.
 -. 이는 나중에 코드를 쉽게 분석할 수 있는 설명이된다.
 -.코드의 버그를 잡을수있는 수단이 된다.

----------------------------------------- written by yvette.

[Quiz] 다음 물음에 답하라.(~자바의 구조)

Posted by yvette.theomom's blog
2009. 11. 10. 12:01 개발/025_JAVA

1) 자바는 어떻게 저장해야 하는가?
          ==> 클래스명과 파일명을 같게 저장한다. (Test.java)

2) 이 클래스를 스스로 실행가능하게 만들수 있는 설계를 하시오.
          ==>  main method 가 있어야 스스로 실행가능하며,
                 main method 의 형태는 public static void main(String args[]) {
                                                   } 이다.

3) 이 java 파일을 compile 하시오.(java file 의 compile 명령어)
          ==> javac Test.java

   3-1) 컴파일후 생성되는 파일의 확장자는?
          ==> *.class 파일 --> Test.class

4) compile 된 자바파일을 실행하시오.
          ==> java Test


[JAVA] main 의 존재유무와 그 의미에 대해-기본적인 JAVA 언어의 구조

Posted by yvette.theomom's blog
2009. 11. 10. 11:04 개발/025_JAVA

-. 스스로 실행가능하게 하려면 main 이 있어야 한다.
-. 스스로 실행가능한 Class 를 만들기 위해서 이 형태는 변하지 않는다.
    public static void main(String args[]) {
    }

-. 기본적인 자바 언어의 구조
    Class Test { 
             public static void main(String args[]) {
             }
    }

-. 실행가능한 기본적인 자바 프로그램
    Class Test {
             int a;
             public static void main(String args[]) {
                              System.out.println(a);
             }
     }

      1) 저장: Test.java
      2) compile : javac Test.java    --> Test.class 파일생성됨
          2-1) main 의 유무 --> 스스로 실행가능여부 판정
      3) 실행 : java Test

-written by yvette.

   

[JAVA] JAVA 언어의 구조 및 클래스에 대해

Posted by yvette.theomom's blog
2009. 11. 10. 10:59 개발/025_JAVA

JAVA 언어의 구조

Class 도서관 {                 ==>  클래스명                       ---> 도서관이라는 클래스가 있다고하자.

  수호지                           ==> field (property)               ---> 도서관에는 책들이 있고 도서관안에 있는 그 책들을
  삼국지                                                                            field 라 하며 이는 property 라고도 한다.
      .                                                                                도서관의 책들에는 수호지도 있고, 삼국지도 있다.
      .
      .
  --------
  목록                              ==> method (attribute)           ---> 도서관에는 책들의 목록(리스트->행동)이 있고,
  사서(기기)                                                                       사서가 있다. 이는 ACT 즉, 행동을 의미하며
                                                                                        method 라고도 하고, 좀더 유식한말로(^^) 
                                                                                        attribute 라고도 한다. 

}   


Class 차 {
   엔진(움직임)
   핸들, 시트등

}

- written by yvette


#. 보충

 § 자바의 구조알기 §
   
class : 자바에서는 기본적인 자료형으로 그 안에는 act를 할 수 있는 메소드와 명사적인 부분에 해당하는 자료형으로 구분 될 수 있고, 또 다른 클래스가 오는 것이 가능하다.
method : act를 하는 부분이고, 이 부분에서 실질적인 작업이 일어난다.
변수 : 작업의 대상이 되며, 지역변수와 멤버 변수로 구분을 할 수 있다.
                                                                                                  출처: http://www.ichoongang.com/






 

[OOP] 개념

Posted by yvette.theomom's blog
2009. 11. 10. 10:53 개발/025_JAVA
-. Object Oriented Programming
-. 자바가  객체지향언어는 아니다.
-. 객체는 Object 이나, Object 는 객체라고 말할수 없다. Object 는 단지 Object 일뿐이다.
    객체 = Object (O)
    Object == 객체 (X)

-. 객체란, 우리가 명사로써 표현할 수 있는 모든 것을 말한다.
-. 객체의 개념이 프로그램 속에서는 클래스 형태로 존재하고, 그 속에는 메소드와 함수가 있다. 
-. 메소드와 함수는 각각 어떤 행동을 할수 있는 것을 말한다.

- written by yvette.