λ³μμ λ©μλ
β’
λ³μ
β’
λ©μλ
INDEX
β’
λ³μ (Variables)
λ°μ΄ν°λ₯Ό μ μ₯νλ λ©λͺ¨λ¦¬ 곡κ°
μλ£ν
μλ°μμ λ€λ£¨λ λ°μ΄ν° νμ
μ ν¬κ² κΈ°λ³Έν(Primitive Type)κ³Ό μ°Έμ‘°ν(Reference Type)μΌλ‘ λλ μ μμ΅λλ€.
β’
κΈ°λ³Έ μλ£ν
β’
μ°Έμ‘° μλ£ν
κΈ°λ³Έ μλ£ν
κΈ°λ³Έν(Primitive Type) | ν¬κΈ° | λ²μ |
byte | 1λ°μ΄νΈ | -128 ~ 127 |
short | 2λ°μ΄νΈ | -32,768 ~ 32,767 |
int | 4λ°μ΄νΈ | -2,147,483,648 ~ 2,147,483,647 |
long | 8λ°μ΄νΈ | -9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807 |
float | 4λ°μ΄νΈ | μ½ Β±3.4 Γ 10^38 (μμμ 6-7μ리) |
double | 8λ°μ΄νΈ | μ½ Β±1.8 Γ 10^308 (μμμ 15-16μ리) |
char | 2λ°μ΄νΈ | 0 ~ 65,535 (μ λμ½λ) |
boolean | 1λ°μ΄νΈ | true λλ false |
μ°Έμ‘° μλ£ν
μ°Έμ‘°ν(Reference Type) | μ€λͺ
|
ν΄λμ€(Class) | κ°μ²΄λ₯Ό μ μνλ μ€κ³λ (String, Integer λ±) |
μΈν°νμ΄μ€(Interface) | ν΄λμ€κ° ꡬνν΄μΌ νλ κΈ°λ₯λ€μ μ μ |
λ°°μ΄(Array) | κ°μ νμ
μ μ¬λ¬ λ°μ΄ν°λ₯Ό μ μ₯νλ ꡬ쑰 |
μ΄κ±°ν(Enum) | μμ μ§ν©μ μ μνλ λ°μ΄ν° νμ
|
κΈ°λ³Ένμ μ€μ κ°μ μ μ₯νκ³ , μ°Έμ‘°νμ κ°μ²΄μ λ©λͺ¨λ¦¬ μ£Όμ(μ°Έμ‘°)λ₯Ό μ μ₯ν©λλ€.
λ³μ μ μΈ λ° μ΄κΈ°ν
λ³μ μ μΈ
λ³μ μ μΈμ νλ‘κ·Έλ¨μμ μ¬μ©ν λ³μλ₯Ό μμ±νλ κ³Όμ μ
λλ€.
λ³μλ₯Ό μ μΈν λλ λ°μ΄ν° νμ
κ³Ό λ³μλͺ
μ λͺ
μν΄μΌ ν©λλ€. μ΄λ₯Ό ν΅ν΄ μ»΄ν¨ν°λ λ©λͺ¨λ¦¬μ ν΄λΉ νμ
μ λ°μ΄ν°λ₯Ό μ μ₯ν 곡κ°μ ν λΉν©λλ€.
μ΄κΈ°ν
μ΄κΈ°νλ λ³μμ μ΅μ΄λ‘ κ°μ ν λΉνλ κ³Όμ μ
λλ€.
λ³μλ₯Ό μ μΈν νμ μ²μμΌλ‘ κ°μ μ μ₯νλ κ²μΌλ‘, μ΄λ₯Ό ν΅ν΄ λ³μκ° λ©λͺ¨λ¦¬μμ νΉμ κ°μ κ°μ§κ² λ©λλ€. μ΄κΈ°ννμ§ μμ λ³μλ₯Ό μ¬μ©νλ©΄ μ€λ₯κ° λ°μνκ±°λ μμΈ‘ν μ μλ κ°μ΄ λμ¬ μ μμ΅λλ€.
// λ³μ μ μΈ
int number;
String name;
// λ³μ μ΄κΈ°ν
number = 10;
name = "νκΈΈλ";
// μ μΈκ³Ό μ΄κΈ°ν λμμ
int age = 25;
Java
볡μ¬
λ³μμ μ€μ½ν(Scope)
λ³μκ° νλ‘κ·Έλ¨ λ΄μμ μ κ·Ό κ°λ₯ν λ²μλ₯Ό μλ―Έν©λλ€.
β’
μΈμ€ν΄μ€ λ³μ: ν΄λμ€ λ΄λΆ, λ©μλ μΈλΆμ μ μΈλ λ³μ
β’
ν΄λμ€ λ³μ(static): static ν€μλκ° λΆμ λ³μ
β’
μ§μ λ³μ: λ©μλ λ΄λΆμ μ μΈλ λ³μ
μ€μ½ν μ ν | μ μΈ μμΉ | μλͺ
μ£ΌκΈ° | μ κ·Ό λ°©λ² |
μΈμ€ν΄μ€ λ³μ | ν΄λμ€ λ΄λΆ,
λ©μλ μΈλΆ | κ°μ²΄κ° μμ±λ λ μμ±λκ³ ,
κ°μ²΄κ° μλ©Έλ λκΉμ§ μ μ§ | κ°μ²΄λ₯Ό ν΅ν΄ μ κ·Ό |
ν΄λμ€ λ³μ(static) | ν΄λμ€ λ΄λΆ,
static ν€μλ μ¬μ© | ν΄λμ€κ° λ‘λλ λ μμ±λκ³ ,
νλ‘κ·Έλ¨μ΄ μ’
λ£λ λκΉμ§ μ μ§ | ν΄λμ€ μ΄λ¦μΌλ‘ μ§μ μ κ·Ό κ°λ₯ |
μ§μ λ³μ | λ©μλ λ΄λΆ | λ©μλκ° νΈμΆλ λ μμ±λκ³ ,
λ©μλ μ€νμ΄ λλλ©΄ μλ©Έ | μ μΈλ λΈλ‘ λ΄μμλ§ μ κ·Ό κ°λ₯ |
public class ScopeExample {
// μΈμ€ν΄μ€ λ³μ
int instanceVar = 10;
// ν΄λμ€ λ³μ(static)
static int staticVar = 20;
public void method() {
// μ§μ λ³μ
int localVar = 30;
System.out.println(localVar); // μ§μ λ³μ μ κ·Ό
System.out.println(instanceVar); // μΈμ€ν΄μ€ λ³μ μ κ·Ό
System.out.println(staticVar); // ν΄λμ€ λ³μ μ κ·Ό
}
}
Java
볡μ¬
λ©μλ (Methods)
νΉμ μμ
μ μννλ μ½λμ μ§ν©μ
λλ€.
λ©μλ ꡬ쑰
μ κ·Όμ μ΄μ λ°ννμ
λ©μλμ΄λ¦(맀κ°λ³μ) {
// λ©μλ λ³Έλ¬Έ
return λ°νκ°; // λ°ν νμ
μ΄ voidκ° μλ κ²½μ°
}
Java
볡μ¬
λ©μλ κ΅¬μ± μμ
κ΅¬μ± μμ | μ€λͺ
| μμ |
μ κ·Όμ μ΄μ
(Access Modifier) | λ©μλμ μ κ·Ό κ°λ₯ λ²μλ₯Ό κ²°μ | public, private, protected, default(μμ) |
λ°ννμ
(Return Type) | λ©μλκ° μμ
ν λ°ννλ λ°μ΄ν°μ νμ
| int, String, boolean, void λ± |
맀κ°λ³μ
(Parameters) | λ©μλ μ€νμ νμν λ°μ΄ν°λ₯Ό
μΈλΆμμ λ°κΈ° μν λ³μ | int num, String name, Person p λ± |
return | λ©μλμ κ²°κ³Όκ°μ νΈμΆν κ³³μΌλ‘ λ°ν | return 10; return "Hello"; return true; |
void | λ°νκ°μ΄ μμμ μλ―Ένλ λ°ν νμ
| public void printInfo() { ... } |
κ° μ κ·Όμ μ΄μμ νΉμ§κ³Ό λ²μλ λ€μκ³Ό κ°μ΅λλ€
μ κ·Όμ μ΄μ | ν΄λμ€ λ΄λΆ | κ°μ ν¨ν€μ§ | νμ ν΄λμ€ | μΈλΆ ν΄λμ€ |
public | O | O | O | O |
protected | O | O | O | X |
default(μμ) | O | O | X | X |
private | O | X | X | X |
λ©μλ μμ
// λ μλ₯Ό λνλ λ©μλ
public int add(int a, int b) {
return a + b;
}
// λ°νκ°μ΄ μλ λ©μλ
public void printMessage(String message) {
System.out.println(message);
}
// μ μ (static) λ©μλ
public static double calculateAverage(double[] numbers) {
double sum = 0;
for (double number : numbers) {
sum += number;
}
return sum / numbers.length;
}
Java
볡μ¬
λ©μλ μ μ - 4κ°μ§ νν
νν | 맀κ°λ³μ | λ°νκ° | νΉμ§ |
1. 맀κ°λ³μ X, λ°νκ° X | μμ | μμ (void) | λ¨μ μ€ν μμ
μ μ ν© |
2. 맀κ°λ³μ O, λ°νκ° X | μμ | μμ (void) | μ
λ ₯ λ°μ΄ν°λ₯Ό μ²λ¦¬νλ μμ
μ μ ν© |
3. 맀κ°λ³μ X, λ°νκ° O | μμ | μμ | μΌκ΄λ κ²°κ³Όλ₯Ό λ°ννλ μμ
μ μ ν© |
4. 맀κ°λ³μ O, λ°νκ° O | μμ | μμ | μ
λ ₯μ λ°μ μ²λ¦¬ ν κ²°κ³Όλ₯Ό λ°ννλ μμ
μ μ ν© |
κ° λ©μλ ννμ μμ:
// 1. 맀κ°λ³μ X, λ°νκ° X
public void printHello() {
System.out.println("Hello!");
}
// 2. 맀κ°λ³μ O, λ°νκ° X
public void printMessage(String message) {
System.out.println(message);
}
// 3. 맀κ°λ³μ X, λ°νκ° O
public int getCurrentYear() {
return 2025;
}
// 4. 맀κ°λ³μ O, λ°νκ° O
public int add(int a, int b) {
return a + b;
}
Java
볡μ¬
λ©μλ μ€λ²λ‘λ©(Method Overloading)
κ°μ μ΄λ¦μ λ©μλλ₯Ό 맀κ°λ³μμ νμ
, κ°μ, μμλ₯Ό λ€λ₯΄κ² νμ¬ μ¬λ¬ κ° μ μνλ κ²μ
λλ€.
public int add(int a, int b) {
return a + b;
}
public double add(double a, double b) {
return a + b;
}
public int add(int a, int b, int c) {
return a + b + c;
}
Java
볡μ¬
λ©μλ μ€λ²λ‘λ©μ μλ°μ νΉμ§μΈ λ€νμ±μ ꡬνν κ°λ
μ
λλ€. κ°μ μ΄λ¦μ λ©μλλ₯Ό μ¬λ¬ ννλ‘ μ¬μ©ν μ μκ² ν¨μΌλ‘μ¨ μ½λμ κ°λ
μ±κ³Ό μ μ§λ³΄μμ±μ λμ
λλ€.
λ©μλ μ€λ²λ‘λ©μ μ₯μ :
β’
λΉμ·ν κΈ°λ₯μ νλ λ©μλλ€μ κ°μ μ΄λ¦μ μ¬μ©νμ¬ μΌκ΄μ±μ μ μ§ν μ μμ΅λλ€.
β’
맀κ°λ³μλ§ λ€λ₯΄κ³ λ©μλ μ΄λ¦μ΄ κ°μ μ½λλ₯Ό μ§κ΄μ μΌλ‘ μ΄ν΄ν μ μμ΅λλ€.
β’
λ©μλ νΈμΆ μ μ μ ν λ©μλκ° μλμΌλ‘ μ νλμ΄ νΈλ¦¬ν©λλ€.
λ©μλ μ€λ²λ‘λ©μ λ°ν νμ
λ§ λ€λ₯΄κ² μ μν μ μμΌλ©°, λ°λμ 맀κ°λ³μμ νμ
, κ°μ, μμ μ€ νλ μ΄μμ΄ λ¬λΌμΌ ν©λλ€.