3. μλ£ν(DataType)
μ΄μ ν¬μ€νΈμμ λ³μλ₯Ό μ€λͺ νμ΅λλ€.
μλ£νμ΄λ λ³μμ κ°μ ν λΉν λ, μ΄λ€ κ°μ ν λΉν κ²μΈμ§? 미리 μλ €μ£Όλ κ²μ λλ€.
λ³μ ν¬μ€νΈλ₯Ό μ μκ°ν΄ λ΄ μλ€.
1. a = 10μ μμ±νκ³ λ°λ‘ λ€μμ a = 22μ΅μ΄λΌκ³ μμ±ν΄ λ΄ μλ€.
2. Symbol Tableμμ aμ μ£Όμκ° 0x0004λΌκ³ κ°μ μ ν©μλ€.
3. 0x0008 μ£Όμμ μ΄λ―Έ λ€λ₯Έ κ°μ΄ μλ€κ³ κ°μ ν©μλ€.
4. 0x0004μ 10μ μ μ₯ν λλ μ무 λ¬Έμ κ° μμ΅λλ€.
5. 0x0004μ 22μ΅μ μ μ₯ν λλ λ¬Έμ κ° λ°μν©λλ€.
μ΄μ κ° λκΉμ?
μ»΄ν¨ν°μμ κΈ°λ³Έμ μΈ μ μλ 4byte(32bit, λλ΅ 21μ΅)κΉμ§ ννμ νκ³ κ³΅κ°μ μ°¨μ§ν©λλ€.
aλΌλ λ³μκ° 0x0004, 0x0005, 0x0006, 0x0007μ 곡κ°μ μ°¨μ§νλ κ²μ΄μ£ .
κ·Έλ°λ° 22μ΅μ μ μ₯ν λλ 4byteλ₯Ό λμ΄κ°λλ€. 0x0008μ 곡κ°κΉμ§ 건λλ¦¬κ² λλ λ¬Έμ κ° λ°μν μ μμ£ .
λ§μ½ 0x0008μ μ€μν κ°μ΄ λ€μ΄ μλ€λ©΄ λ¬Έμ κ° λ°μνκ² λμ£ .
κ·Έλμ 미리 곡κ°μ ν보νκΈ° μν΄ μλ£νμ μ¬μ©ν©λλ€.
PDT(Primitive Data Type) - κΈ°λ³Έ μλ£ν
λ°μ΄ν° νμ | ν¬κΈ° | μ’ λ₯ | κΈ°λ³Έ κ° |
byte | 1byte | μ μ | 0 |
short | 2byte | μ μ | 0 |
int | 4byte | μ μ | 0 |
long | 8byte | μ μ | 0L |
float | 4byte | μ€μ | 0.0f |
double | 8byte | μ€μ | 0.0d |
char | 2byte | λ¬Έμ | null |
boolean | 1byte | λΆλ¦° | false |
μλ°μμλ unicodeλ₯Ό μ¬μ©νκΈ° λλ¬Έμ charνμ΄ 2byteμ ν¬κΈ°λ₯Ό κ°μ΅λλ€.
μ°λ¦¬λ μ΄λ° μλ£νμ ν΅ν΄ λ³μλ₯Ό μ μΈνκ³ ν λΉνκ² λ©λλ€.
int myAge; // μ μΈ
myAge = 25; // ν λΉ
μ°Έκ³ λ‘ charλ 'A'μ κ°μ νλμ λ¬Έμλ§ ννν μ μμ΅λλ€.
Aceμ κ°μ νλμ λ¬Έμμ΄μ νννκΈ° μν΄μλ Stringμ΄λΌλ μλ£νμ μ¬μ©ν΄μΌ νλλ°μ.
Stringμ κΈ°λ³Έ μλ£νμ΄ μλκ³ Javaμμ μ§μ λ§λ μλ£νμ λλ€. μ΄λ° κ²μ User Define Data Typeμ΄λΌκ³ ν©λλ€.
κΈ°λ³Έ μλ£ν μΈ μ¬μ©μμκ² λμ± νΈλ¦¬ν κΈ°λ₯μ μ 곡νλ κ²μ λλ€. API(Application Programing Interface)λΌκ³ λ νμ£ .
APIμλ μΆνμ λ€λ£° μμ μ΄κ³ Interfaceμ λν κΈμ μ¬κΈ°μ νμΈν μ μμ΅λλ€.
μ»΄ν¨ν°μμ Interfaceλ?
λ¨Όμ , Interfaceμ λ»μ μνΈ μμ©μ΄λΌκ³ ν©λλ€. (Google λ²μκΈ°) μνΈ μμ©μ΄λΌκ³ νλ©΄ Aμ Bκ° μλ‘ λ¬Όκ±΄μ μ£Όκ³ λ°λ , λνλ₯Ό νλ μΈμμ νλ (?) λ κ° μ΄μμ 무μΈκ°κ° μλ‘ λ¬΄μΈκ°λ₯Ό νλ κ²μ΄
dev-dot.tistory.com
UDDT(User Define Data Type) - μ¬μ©μ μ μ μλ£ν
UDDTλ Reference Data Type (μ°Έμ‘°ν) μ΄λΌκ³ λΆλ₯Ό μλ μλλ° ν΄λμ€λ λ°°μ΄ λ±μμ μ¬μ©λλ κ°λ μ λλ€.
λμ€μ λ μμΈν λ€λ£¨κ² μ§λ§ PDT(κΈ°λ³Έ μλ£ν) λλ λ λ€λ₯Έ UDDT(μ¬μ©μ μ μ μλ£ν)μ μ§ν©μΌλ‘ μ΄λ£¨μ΄μ§ μλ£νμ λλ€. μλ₯Ό λ€μ΄ Stringμ λ¬Έμμ΄μ νννλλ° λ¬Έμμ΄μ νλμ λ¬Έμλ€λ‘ λλ μ μμ΅λλ€.
μ΄ λ§μ char μλ£νμΌλ‘ String μλ£νμ λ§λ€μ΄ λ³Ό μ μμ΅λλ€.
UDDTλ Classλ₯Ό 곡λΆνκ² λλ©΄ μ‘°κΈ λ μ½κ² μ μ μμΌλ―λ‘ μ§κΈμ μ¬κΈ°κΉμ§λ§ μμλλ©΄ λ κ² κ°μ΅λλ€.
μ΄μ , μ°λ¦¬λ PDT, UDDT, Variable, Assignμ μμμ΅λλ€.
μ°λ¦¬λ νλμ νλ‘κ·Έλ¨μ μμ±ν μ μμ΅λλ€.
μ»΄ν¨ν°μ κ°μ μ μ₯νκ³ μΆλ ₯νλ κ²μ΄μ£ .
μΆλ ₯μ λν΄μλ μμ§ μμ±νμ§ μμμ§λ§ κΈ°λ³Έμ μΌλ‘ λ§μ λ΄μΌνλκΉ
System.out.println(value); λ‘ μκΈ°μκ°λ₯Ό μΆλ ₯ν΄λ³΄λ©΄ μλ£νμ λν΄ λ μμΈν μ μ μκ² λ€μ
public static void main(String[] args) {
String name = "dot";
int age = 25;
char gender = 'M';
boolean girlFriend = false;
System.out.println("μ΄λ¦ : " + dot);
System.out.println("λμ΄ : " + age);
System.out.println("μ±λ³ : " + gender);
System.out.println("μ¬μμΉκ΅¬ μ¬λΆ : " + girlFriend);
}
μλ£νμ λν λ Έμ μ 리μ λλ€.
https://www.notion.so/24jihwan/295b00df286d4f3f92d72119afd997ee
μλ£ν | Notion
μλ£νμ μ’ λ₯ μμ보기
24jihwan.notion.site