2011년 2월 24일 목요일

소스 파일 구성


하나의 파일에는 하나의 클래스가 작성되며 따라서 둘 이상의 클래스가 선언될 수 있다. 둘 이상의 클래스를 선언할 때는 public제한자로 선언된 클래스의 이름이 파일 이름이 되어야 하고, 만약 public클래스가 존재하지 않을 때는 어느 클래스의 이름도 파일 이름이 될 수 있다. 이미 만들어져 있는 클래스를 사용하기 위한 import문과 작성된 클래스를 패키지로 관리하기 위한 package문이 선언될 수 있음.
주석 : 프로그램의 흐름에는 영향을 주지 않으면서 소스 코드의 분석을 용이하게 해주는 문장
문서화 주석 : 자바 도큐먼트를 만들기 위해서 정의된 주석으로서 문서화 주석으로 선언된 내용을 도큐먼트 도구로 뽑아내어 KAVA API와 같은 HTML페이지를 만들 수 있음
라인 주석 : 단일 문장을 주석처리하기 위해 사용
블록 주석 : 여러 라인의 문장을 주석처리하기 위해 사용. 한 줄 이상의 문장을 주석처리하기 위해 사용되며 소스 코드 상에 부가적인 설명이 많이 필요한 경우에 주로 사용. 더 이상 사용되지 않는 메소드를 주석처리하기 위해 사용
Package : 클래스를 모아두는 창고와 같은 것으로서 작성된 클래스들을 패키지로 묶기 위해서는 클래스 파일의 앞부분에 package를 선언하고 해당 클래스들을 선언된 패키지 이름과 같은 폴더에 추가. 패키지 이름은 전 세계에서 유일할 수 있도록 도메인 네임을 거꾸로 하여 작성하는 것이 관례. 하지만 꼭 지켜야 할 필요는 없음
Import : 이미 작성되어 있는 클래스들을 사용하기 위해서 선언하는 문장. import 선언하고 뒤에 사용하고자 하는 클래스 명을 패키지 명과 함께 선언하면 됨.
Class : 객체의 청사진으로서 속성과 행동을 표현하기 위한 변수와 메소드로 구성

----------------------------------------------------------------------------


C에 대한 노트.


32767 까지 인가 32768까지 이던가...

typedef int (*p)(void);

void는 쓰나 안쓰나 같겠지?

p func(void)
{
 p fp=abc;
 return p;
}

이것이 함수 포인터 인가...

int func(int a, int b)
int (*p)(int, int);

func(10,20) 이나
(*p)(10,20)이나.

메모리는 Runtime 때만 allocation이 된데.

심볼은 주소를 가지고 있는 것들....

함수 안의 local variable은 Runctime of func...

전역 변수는 초기화 하지 않는 것이 낫나?

스택에서 겹치는 경영은 base의 것

*(unsigned int)dst++ = *(UI) p++;
이라고 명시하는게 빠르다?
*dst++=*p++; 보다는. 도대체 왜?

배열명은 주소값 자체다. 이것.. 뭐 누구나 아는 사실.

int (*p)(void) = func;

함수 포인터 기본형.

함수 주소를 알면?

(  ( (int (*)(void) )0x40100A)  ) (); 요걸로 실행가능.

(*p)[] 배열 포인터
*p[] 포인터 배열

int p[1000]이 int *p로 보인다~~

P.S masm 6.14이후버전부터 if, while, repeat가 들어갔음.

댓글 없음:

댓글 쓰기

국정원의 댓글 공작을 지탄합니다.

UPBIT is a South Korean company, and people died of suicide cause of coin investment.

 UPBIT is a South Korean company, and people died of suicide cause of coin. The company helps the people who control the market price manipu...