λ³Έλ¬Έ λ°”λ‘œκ°€κΈ°

#1 Language πŸ‘„/1-4 JAVA

[JAVA] static λ©”μ†Œλ“œ

static λ©”μ†Œλ“œ
  • 객체 생성 없이 λ°”λ‘œ μ‚¬μš©ν•  수 μžˆλŠ” 속성과 λ©”μ†Œλ“œ
  • μΈμŠ€ν„΄μŠ€ λ©”μ†Œλ“œ 호좜 λΆˆκ°€λŠ₯

 

클래슀 λ³€μˆ˜
  • ν•œ 클래슀의 λͺ¨λ“  μΈμŠ€ν„΄μŠ€λ“€μ΄ 곡톡적인 값을 μœ μ§€ν•΄μ•Όλ˜λŠ” μ†μ„±μ˜ 경우, 클래슀 λ³€μˆ˜λ‘œ μ„ μ–Έν•΄μ•Όν•œλ‹€
  • 속성(멀버 λ³€μˆ˜) μ€‘μ—μ„œ 곡톡 속성에 static을 뢙인닀.
  • μ–Έμ œλ‚˜ μ‚¬μš©κ°€λŠ₯
  • ‘ν΄λž˜μŠ€μ΄λ¦„.ν΄λž˜μŠ€λ³€μˆ˜’
  • public + → μ „μ—­λ³€μˆ˜μ˜ 성격을 κ°€μ§€κ²Œ λœλ‹€.

 

// μΈμŠ€ν„΄μŠ€ λ©”μ†Œλ“œ
MyMath2 mm = new MyMath2(); // 1. μΈμŠ€ν„΄μŠ€ 생성
mm.a = 200; // a,bλŠ” μΈμŠ€ν„΄μŠ€ λ³€μˆ˜ μ‚¬μš©
mm.b = 100;
long add()   { return a + b; }  // 2. μΈμŠ€ν„΄μŠ€ λ©”μ†Œλ“œ 호좜            
// static λ©”μ†Œλ“œ 
// μΈμŠ€ν„΄μŠ€ λ³€μˆ˜ μ‚¬μš©ν•˜μ§€ μ•Šμ„ λ•Œ static λΆ™μž„
static long add(long a, long b) { return a + b; }  // a,bλŠ” μ§€μ—­ λ³€μˆ˜

// μΈμŠ€ν„΄μŠ€ λ³€μˆ˜: κ°œλ³„λ‘œ μœ μ§€λ˜μ–΄μ•Όν•˜λŠ” 속성 κ°’ ex) μΉ΄λ“œ 규격(폭,높이)
String kind;
int number;
// 클래슀 λ³€μˆ˜: κ³΅ν†΅μœΌλ‘œ μœ μ§€λ˜λŠ” 속성 κ°’ ex) μΉ΄λ“œ 무늬, 번호
static int width = 100;
static int height = 250;

Card c = new Card();
// μΈμŠ€ν„΄μŠ€ 객체 μ‚¬μš©
c.kind = "HEART";
c.number = 5;
// 클래슀 객체 μ‚¬μš©
Card.width = 100; // ν΄λž˜μŠ€μ΄λ¦„.λ³€μˆ˜λ‘œ μ‚¬μš©ν•˜λŠ”κ²Œ μ’‹μŒ
Card.width = 250;
LIST