태터데스크 관리자

도움말
닫기
적용하기   첫페이지 만들기

태터데스크 메시지

저장하였습니다.


'2008/03'에 해당되는 글 38건

  1. 2008/03/31 [SAX] String => xml 데이터로 파싱하기
  2. 2008/03/31 tar 쓰기.
  3. 2008/03/26 [cvs] .cvsignore 파일
  4. 2008/03/26 회의록?
  5. 2008/03/26 [Java] Head first java (5)
  6. 2008/03/26 [Java] Head first java (4)
  7. 2008/03/25 [Java] Head first java (3)
  8. 2008/03/25 [Java] Head first java (2)
  9. 2008/03/20 지름신 강림 - 맨유 후드티
  10. 2008/03/20 몰입...
2008/03/31 13:51

[SAX] String => xml 데이터로 파싱하기

parser.parse(new InputSource(new StringReader("....XML....")))

'Language > Java' 카테고리의 다른 글

Java에서 다중상속이 없는 이유는??  (0) 2008/07/29
[SAX] String => xml 데이터로 파싱하기  (0) 2008/03/31
[Java] Head first java (5)  (0) 2008/03/26
[Java] Head first java (4)  (0) 2008/03/26
[Java] Head first java (3)  (0) 2008/03/25
[Java] Head first java (2)  (0) 2008/03/25
Trackback 0 Comment 0
2008/03/31 13:43

tar 쓰기.

압축 : tar -zcvpf [압축파일명] [대상디렉토리]       ex)tar -zcvpf temp.tar.gz ./

풀기 : tar -zxvpf [압축파일명] [대상디렉토리]       ex)tar -zxvpf temp.tar.gz ./

 

Trackback 0 Comment 0
2008/03/26 15:11

[cvs] .cvsignore 파일

cvs에 반영하는 목록에서 빼고 싶다면 해당 디렉토리에 .cvsignore파일을 생성하면 된다.

파일에 그 디렉토리 안에서 cvs에 반영되는 폴더나 파일의 이름들을 적어주면 된다.

classes
common
lib
tlds


사용자 삽입 이미지

'Tools > Eclipse' 카테고리의 다른 글

[Mylyn] UI Overview  (0) 2008/04/29
ant이용해서 ftp 사용하기.  (0) 2008/04/08
[cvs] .cvsignore 파일  (0) 2008/03/26
[Mylyn] Mylyn이란...  (0) 2008/03/12
[Mylyn] 오호라~!  (0) 2008/03/12
[svn] subclipse설치  (0) 2008/03/11
Trackback 0 Comment 0
2008/03/26 10:20

회의록?

보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력하세요.
2008/03/26 00:21

[Java] Head first java (5)

두 수중 더 작은 값을 리턴해주는 min(int a, int b);
더 큰 값을 리턴해 주는 max(int a, int b);

이런 메소드는 인스턴스 변수(클래스 내의 property)를 전혀 사용하지 않아도 된다.
즉, 인스턴수 변수에 따라 행동이 달라지지 않기 때문에 인스턴스 객체가 필요하지 않다.
클래스(틀)만 있어도 된다.
=> static 클래스.


static메소드를 호출할 때는 클래스 명을 사용한다.
Math.min(1,8); // Math는 클래스 이름.


정적(static) 메소드는 그 정적 메소드가 들어있는 클래스의 특정 인스턴스와는 전혀 무관하게 실행됩니다.

정적(static) 메소드에서는 정적 변수가 아닌 변수(인스턴스변수)를 쓸 수 없습니다.


정적 메소드에서는 정적 메소드가 아닌 메소드도 사용할 수 없습니다.

정적 변수는 모든 인스턴스(객체)들이 그 값을 공유하게 됩니다.

public class AA {
    public staic int cnt = 5;
}


AA a = new AA();
AA b = new AA();

// 여기서 a.cnt 와 b.cnt는 같은 메모리 공간의 값을 나타내고 있는 것이다. 즉, 같은 변수이다.



정적변수는 그 클래스에 속하는 객체가 생성되기 전에 초기화된다.
정적 변수는 그 클래스에 속하는 정적 메소드가 실행되기 전에 초기화 된다.



변수를 final로 지정하면 그 값을 바꿀수 없다.
메소드를 final로 지정하면 그 메소드를 오버라이드 할 수 없다.
클래스를 final로 지정하면 그 클래스를 확장할 수 없다. (상속불가능)



클래스가 이미 final로 지정되어 있다면 메소드를 굳이 final로 지정하지 않아도 된다.
클래스를 상속받을 수 없기 때문에 오버라이드도 불가능하기 때문이다.



p.321까지

'Language > Java' 카테고리의 다른 글

Java에서 다중상속이 없는 이유는??  (0) 2008/07/29
[SAX] String => xml 데이터로 파싱하기  (0) 2008/03/31
[Java] Head first java (5)  (0) 2008/03/26
[Java] Head first java (4)  (0) 2008/03/26
[Java] Head first java (3)  (0) 2008/03/25
[Java] Head first java (2)  (0) 2008/03/25
Trackback 0 Comment 0
2008/03/26 00:04

[Java] Head first java (4)

오버로드된 메소드에서 그 상위 클래스 메소드를 호출하고자 할때는 super를 이용한다.



스택 : 메소드 호출과 지역변수가 저장된다.
힙 : 모든 객체가 저장되어 있는 곳이다. (가비지 컬렉션이 일어나는 곳이다.)
      인스턴스 변수(메소드 안이 아닌 클래스 내에 선언되어 있는 변수)는 겍체내에 있는 것이니 당연히
      힙에 저장되어 있다.


스택 (LIFO : 나중에 들어간게 먼저 나온다.)
public void aa() {
    int a = 4;
}

Stack....
-------------------------
       }
-------------------------
       int a = 4;
-------------------------
        aa() {
-------------------------

내 기억으론 닫는 괄호 } 가 나오면 스택에서 제거되었던걸로 기억한다.




컴파일러는 생성자가 전혀 없는 경우에만 기본생성자 A()를 만들어 준다. A(int a)같은 기본생성자 이외의
생성자가 있다면 기본생성자를 직접 만들어 주어야 한다.



생성자가 실행되면 바로 그 상위클래스 생성자를 호출하고, Object클래스의 생성자에 다다를때까지
상속의 사슬을 거슬러 올라가면서 각 상위클래스의 생성자를 호출하게 됩니다.

우리가 직접 super()를 호출해주지 않으면 컴파일러가 알아서 super()를 호출해 주게 된다.
즉, 모든 생성자에 super()를 자동으로 추가해준다.

여기서 순서도 중요하다.
public Boop() {
    size = 1;

    super(); // <- 이건 잘못된 경우. super()는 맨 위에 있어야 한다.
}




같은 클래스에 있는 다른 생성자를 호출할 때는 this()를 사용하면 된다.


레퍼런스 변수에 null을 넣으면 가비지 컬렉션 대상이 된다.

AAA aa = new AAA();
aa = null; <- 가비지 컬렉션 대상.

'Language > Java' 카테고리의 다른 글

[SAX] String => xml 데이터로 파싱하기  (0) 2008/03/31
[Java] Head first java (5)  (0) 2008/03/26
[Java] Head first java (4)  (0) 2008/03/26
[Java] Head first java (3)  (0) 2008/03/25
[Java] Head first java (2)  (0) 2008/03/25
[Java] Head first java (1)  (2) 2008/03/20
Trackback 0 Comment 0
2008/03/25 23:41

[Java] Head first java (3)

A클래스가 B클래스를 상속받았고 B.aa()메소드를 오버라이드 했다.
a.aa();를 호출하면 가장 아래에 구현되어 있는 A클래스에 구현되어 있는 aa()가 호출된다.

즉, C가 B를 상속하고 B는 A를 상속받아 구현하고 있다. (  A < B < C )
만약 C는 aa()를 오버라이드 해서 구현하지 않고 있는 상황이다. B는 A의 aa()를 오버라이드 해서
구현되어 있다. c.aa()를 호출하면 B클래스에 구현되어 있는 aa()가 호출된다.



Animal[] animals = new Animal[5];
animals[0] = new Dog();
animals[1] = new Cat();
animals[2] = new Wolf();
animals[3] = new Hippo();
animals[4] = new Lion();

for(int i = 0 ; i < animals.length ; i++) {
   animals[i].eat();
   animals[i].roam();
}

// Dog, Cat, Wolf, Hippo, Lion클래스는 Animal을 상속받아 구현하고 있다.
// eat(), roam()이 구현되어 있다는 약속이 되어 있는 상황이기 떄문에 가능.
// 즉, 상속이란 일종의 규약이라 할 수 있다.



public 메소드를 private로 오버라이드 할 수 없다.



오버로딩이란 이름이 같고 인자목록이 다른 메소드 두개를 만드는 것. 오버로드된 메소드는 다형성과는
전혀 관계가 없음.



abstract로 클래스를 지정하면 컴파일러는 그 유형의 인스턴스를 만드는 코드를 허용하지 않는다.



추상클래스는 확장하지 않으면 거의 쓸모도 없고, 가치도 없고, 삶의 목적도 없다.

추상클래스 <-> 구상클래스



추상클래스는 반드시 확장해야 하는 클래스.
추상메소드는 반드시 오버라이드해야 하는 메소드.

public abstract void eat(); // 추상메소드 (본체가 없다)

추상메소드를 만들때는 클래스도 반드시 추상이여야 한다.




Object클래스
 - booean equals();
 - Class getClass();
 - int hashCode();
 - String toString();


 
Dog d = new Dog();
ArrayList<Object> arr = new ArrayList<Object>();

arr.add(d);

// Dog d = arr.get(0); // error다. ArrayList<Object>는 무조건 Object타입을 리턴한다.
Dog d = (Dog)arr.get(0); // 이건 된다. 강제로 캐스팅.

'Language > Java' 카테고리의 다른 글

[Java] Head first java (5)  (0) 2008/03/26
[Java] Head first java (4)  (0) 2008/03/26
[Java] Head first java (3)  (0) 2008/03/25
[Java] Head first java (2)  (0) 2008/03/25
[Java] Head first java (1)  (2) 2008/03/20
[Java] 각종 주석들  (0) 2008/02/25
Trackback 0 Comment 0
2008/03/25 23:19

[Java] Head first java (2)

인스턴스 변수는 초기화 할 필요가 없다. (인스턴스 변수 : 메소드 밖에 있는 클래스의 변수)
숫자, char는 0으로 초기화 되고 bool타입은 false, 객체 레퍼런스는 null로 초기화 된다.

지역변수(메소드 안에 있는 변수)는 기본값이 없다. 즉, 초기화 해주어야 사용가능하다.



갑자기 등장한 XP(익스트림 프로그래밍)..
1. 조금씩, 하지만 자주 발표한다.
2. 사이클을 반복해서 돌리면서 개발한다.
3. 스펙에 없는 것은 절대 집어넣지 않는다. (아무리 그 기능이 나중에 쓰일 것 같은 느낌이 들어도
   그러지 않는게 좋다.)
4. 테스트 코드를 먼저 만든다.
5. 야근은 하지 말라. 항상 정규 일과시간에만 작업한다.
6. 기회가 생기는 족족 언제 어디서든 코드를 개선한다.
7. 모든 테스트를 통과하기 전에는 어떤 것도 발표하지 않는다.
8. 조금씩 발표하는 것을 기반으로 하여 현실적인 작업 계획을 만든다.
9. 모든 일을 단순하게 처리한다.
10. 두명씩 팀을 편성하고 모든 사람이 대부분의 코드를 알 수 있도록 돌아가며 작업한다.(짝프로그래밍)



순환문 코드 반복 횟수를 미리 알 수 있는 경우에는 while보다는 for를 쓰는게 좋다.



for(String name : nameArray) {}



자바라이브러리에 ArrayList가 기본적으로 내장되어 있다는 것을 아는것도 중요하지만,
우리가 필요로 하는 것이 바로 ArrayList라는 것을 아는 것이 더 중요하다.


java.lang패키지는 import하지 않아도 자동으로 들어간다.
그래서 String 같은 클래스를 그냥 쓸 수 있는 것이다.

'Language > Java' 카테고리의 다른 글

[Java] Head first java (4)  (0) 2008/03/26
[Java] Head first java (3)  (0) 2008/03/25
[Java] Head first java (2)  (0) 2008/03/25
[Java] Head first java (1)  (2) 2008/03/20
[Java] 각종 주석들  (0) 2008/02/25
상수 인터페이스 패턴 절대 쓰지 마라!  (0) 2008/02/12
Trackback 0 Comment 0
2008/03/20 13:55

지름신 강림 - 맨유 후드티

지름신 강림하셨다... 19파운드...면 4마넌정도인가? 흠...

http://www.kitbag.com/stores/kitbag_4_5/football/product_details.aspx?pid=33446&cid=2149&tid
=


사용자 삽입 이미지

'일쌍다반사' 카테고리의 다른 글

ㅋㅋ 피곤타...  (0) 2008/04/04
ok jsp 해킹 당한듯...하네  (0) 2008/04/01
지름신 강림 - 맨유 후드티  (0) 2008/03/20
블로거 컨퍼런스에 초대 되었넹...  (0) 2008/03/10
eclipse... 머랄까나...  (0) 2008/03/10
신림 순대타운...  (0) 2008/03/09
Trackback 0 Comment 0
2008/03/20 10:46

몰입...

몰입: 인생을 바꾸는 자기 혁명 상세보기
황농문 지음 | 랜덤하우스코리아 펴냄
간절히 원하는 것을 이루기 위해 잠재력을 깨우는 '몰입'을 하라! 뉴턴, 아인슈타인, 에디슨과 같은 과학자들, 워렌 버핏과 같은 투자자들, 빌 게이츠와 같은 세계적인 CEO들… 이들처럼 각자의 분양에서 비범한 업적을 이룬 사람들에게는 공통점이 있다. 바로 고도로 집중된 상태에서 문제를 생각하는, 즉 '몰입'적 사고를 했다는 것이다. 저자는 이 '몰입'이 개인의 천재성을 일깨워주는 열쇠라고 말한다. 『몰입: 인생을 바


"아무리 어려운 문제라도 시간의 문제이지 결국 풀 수 있다."


여러가지 사례와 자신의 경험으로 몰입이라는 경지에 대해서 써놓았다...

그런 사례들을 보면서... 느낀점...

일단, 어떻게 저렇게 살지??? 아무런 재미도 없을꺼 같은데... 사람 사는거 같지가 않아....라는

나의 생각...

하지만 저자는... 그런 몰입 상태에서 나오는 아이디어와 여러 생각들로 인해 매우 즐거워지고

행복해진다라는 의견.

절반쯤 읽었는데... 마저 더 저자의 생각을 알아봐야겠다...

'독서' 카테고리의 다른 글

study 멀하지....?  (0) 2008/05/23
몰입...  (0) 2008/03/20
20대 공부에 미쳐라  (0) 2008/03/14
마음을 움빅이는 힘 "배려"  (0) 2008/02/10
사랑하지 않으면 떠나라!  (0) 2008/02/04
Trackback 0 Comment 0