1. Unicode

 

2. ASCII Characters

 1) 기본적으로 알아야 할 코드값 : 48 (0), 57(9), 10(NewLine), 13(Carriage return)

 

3. Comment(주석)

 1) // 한줄

 2) /* 한줄 이상의 문장 */

 3) JavaDoc : JAVA를 HTML 문서로 만드는 것. (APIDoc의 문서처럼 작성 할 수 있다.)

   - /**  문서화 된 코멘트 **/

   - 설명할 코드 바로 위에 작성 할 것

   - 명령어

 $javadoc -author -version -d [.\경로][자바파일이름]  : 경로에 html파일이 생성된다.

   - Doxygen 툴을 사용하면 쉽게 html문서를 작성 할 수 있다.

 

4. Separators(구분자)

 - (). {}, [], ;, ,, .

 - Word < Statements < Block

 

5. 식별자

 - 클래스,메소드,변수명을 지정 할 수있다.

 - 첫 클래스는 영문자나 (_), ($)만 사용할 수 있다.

 - 길이 제한이 없긴 하다.

 

6. 키워드, 예약어

 - 특수한 목적을 사용하기위해 이미 정의가 된 단어.

 - const, goto 는 키워드에 등록되어 있지만 사용 할 수는 없다.

 - enum : 1.5버전 이상에서부터 사용 가능한 키워드.

 

7. 데이터 저장

 1) 비트

  - unsigned : 모든 비트를 데이터의 양수를 표현

  - signed : 비트 하나를 부호비트로 설정하여 1일 때 음수를 표현한다.

 2) 보수

  - 1의 보수 : 데이터 비트의 반전

  - 2의 보수 : 데이터 비트의 반전 +1

 3) 자료형

  i) 내장형(기본형) : Primitive type

 수치형

 true or false

 bloolean(1bit)

 문자형

 char(2byte)

 정수형

 byte(1byte)

 short(2byte)

 int(4byte)

 long(8byte)

 실수형

 float(4byte)

 double(8byte)

 무치형

 

 void()

 

   - 형변환 : 기본적으로 강제/자동 형변환이 일어나지만, 연산에 의해서는 자동형변환이 일어나지 않는다.

 short a = 5; // 정수 5는 자동으로 short로 형변환 되어진다

 short b = 10;

 short sum = a+b ; // 하지만 연산 과정인 a+b에서는 자동 형변환이 일어나지 않아 int형식으로 sum에 입력 되기 때문에 오류가 난다.

 

 정수는 기본적으로 int의 형을 갖고

 실수는 Double의 값을 갖는다.

 float f = 0.123456789123456789F;  // double형인 실수를 float로 형변환 하여 저장하게된다.
 double d = 0.123456789123456789; //기본으로 실수는 double형이기 때문에 double에 자동으로 맞추어 출력된다.

 

  - cast :

  - convert :

 

  ii) 외장형(추상형) : Reference type = Class, Interface, Enum

    (ps. C 언어의 외장형(추상형) : User-Defined type = 구조체(Struct), Union, Class, Pointer)

  - Heap 공간을 이용한다. (변수는 값을 갖는게 아니라 그 값의 주소를 갖는다.(integer변수와 같은 4바이트를 갖는다)) 

  - String은 new 없이 사용 할 수 있는  클래스이다. ( 많이 사용하기때문에 컴파일러가 대신 new를 만들어 준다.)

 정식적인 사용 방법 :

 String str = new String("Hello");

 축약 방법 :

 String str1 = "Hello";

  - call by value, call by reference value

  Value Copy

 public class ValueCopy{
 public static void main(String[] args) {
  Test t = new Test();
  t.su = 5;
  t.num= t.su; //값복사
  System.out.println("t.num="+t.num);
  t.su =100;
  System.out.println("t.num="+t.num);

 }
}

class Test{
 public int su, num;
}

  Reference Copy

 public class ReferenceCopy{
 public static void main(String[] args) {
  Demo d = new Demo();
  d.su = 5;
  Demo d1 = new Demo();
  d1 = d; //주소복사
  System.out.println("d1.su = "+d1.su);
  d.su=100; // d 가 가지고 있는 주소를 d1에게 주었기 때문에 값이 변한다.
  System.out.println("d1.su = "+d1.su);
 }
}

class Demo{
 public int su;
}

 

 4)포인터와 레퍼런스의 차이

  - 포인터는 변수 메모리의 절대번지를 접근한다.

  - 레퍼런스는 메모리에 접근을 할 수 없다. (그래서 JAVA에서는 디바이스를 직접 생성 할 수 없다.)

 

 5) 상수 (Constants)

  - 자바에서 상수는 final keyword를 갖는다.

  - 변수명은 대문자와 특수문자 (_)를 사용한다.

 

7. 이름 정하기 (Naming Conventions) : 권고 사항으로 개발자들이 개발할 때 더욱 편하게 이름을 작성하는 표기법

 1) Pascal casing (대문자 표기법)

  - class = 명사를 사용하며 2개 이상의 단어 합성 시 첫글자는 대문자.  

  - interface = 형용사형 이나 명사형을 사용한다.

  - 상수 = 모두 대문자를 쓰며 2단어 이상 합성할 때 사이에 (_)를 쓴다.

 2) Camel casing (소문자 표기법)

  - Method = 소문자로 동사형을 사용한다. 2개 이상 합성단어의 첫문자는 대문자.

  - 변수명 = 소문자 명사형

 

 

 

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

 - UNC = 윈도우에서 네트워크 상의 컴퓨터에 접근하기위해 사용하는 ID (LAN 환경 안에서만 사용 가능하다)

 - vachar 와 char : 메모리 용량의 사용을 줄이기 위해 가변적인 공간을 저장하였지면 현재는 메모리의 용량보다 속도가 더 중요하기 때문에 작은 데이터를 저장하더라도 char를 사용하는게 더 빠르다.

 - Stack 영역에서 Heap영역으로 옮기는 것을 boxing이라 하고, 그 반대 과정을 unboxing이라고 한다.


'Programming > JAVA' 카테고리의 다른 글

자바 배열이란?  (2) 2011.03.24
자바 제어문(조건/반복/분기)  (2) 2011.03.24
JAVA 문법과 연산자  (2) 2011.03.24
JAVA의 특징과 설치  (2) 2011.03.24
자바(JAVA)란?  (1) 2011.03.24

+ Recent posts