BootCamp 27day

GyeongNamΒ·2023λ…„ 12μ›” 25일
0

BootCamp

λͺ©λ‘ 보기
25/49
post-thumbnail

πŸ“… 2023λ…„ 12μ›” 20일

[java 12일차]


27일차: java 심화(5)

νŒ¨ν‚€μ§€

// util ν•˜μœ„μ˜ λͺ¨λ“  클래슀 / μΈν„°νŽ˜μ΄μŠ€ 파일 import κ°€λŠ₯
import java.util.*;
// νŠΉμ • νŒ¨ν‚€μ§€μ˜ ν•˜μœ„νŒ¨ν‚€μ§€μ˜ λͺ¨λ“  νŒŒμΌκΉŒμ§€ import ν•˜λŠ” 것은 λΆˆκ°€λŠ₯
// final ν΄λž˜μŠ€λŠ” 상속 λΆˆκ°€

μΆ”μƒν΄λž˜μŠ€μ™€ μΈν„°νŽ˜μ΄μŠ€

μΆ”μƒν΄λž˜μŠ€

abstract class C1305_Animal{
//    final void  makeSound(){
//        System.out.println("동물은 μ†Œλ¦¬λ₯Ό λƒ…λ‹ˆλ‹€.");
//    }
    abstract void makeSound1();
    void makeSound2(){
        System.out.println("동물은 μ†Œλ¦¬λ₯Ό λƒ…λ‹ˆλ‹€.");
    }
}
  • μΆ”μƒν΄λž˜μŠ€λŠ” κ°„λ‹¨νžˆ 말해 μ•„λ‹ˆλ©΄ ν™•μž₯κ°€λŠ₯ν•œ κ°€λŠ₯성을 열어두기 μœ„ν•œ 섀계이닀.
  • ν΄λž˜μŠ€λ‚˜ λ©”μ„œλ“œ μ•žμ— abstract ν‚€μ›Œλ“œκ°€ λΆ™μœΌλ©΄ 좔상 클래슀, 좔상 λ©”μ„œλ“œμΈ 것이닀.
  • μΆ”μƒν΄λž˜μ„œλ₯Ό μƒμ†λ°›κΈ°μœ„ν•΄ 상속 ν‚€μ›Œλ“œμΈ extendsλ₯Ό μ‚¬μš©ν•œλ‹€.
  • 좔상 λ©”μ„œλ“œ(makeSound1)와 일반 λ©”μ„œλ“œ(makeSound2)λ₯Ό κ°€μ§ˆ 수 μžˆλ‹€.
    * 좔상 λ©”μ„œλ“œμΌ 경우 μ„ μ–ΈλΆ€λ§Œ μž‘μ„±ν•˜κ³  κ΅¬ν˜„λΆ€λŠ” μžμ‹ν΄λž˜μŠ€μ—μ„œ μ˜€λ²„λΌμ΄λ”©ν•˜μ—¬ μž‘μ„±ν•œλ‹€.
  • μƒμ„±μžλ„ μ‘΄μž¬ν•œλ‹€.
  • 일단 상속이기 λ•Œλ¬Έμ— 단일상속

μΈν„°νŽ˜μ΄μŠ€

public interface Animal_Interface1 {
    void makeSound();
}
public interface Animal_Interface2 {
    String play(String a, String b);
}
class Dog_Multi_Implements implements  Animal_Interface1, Animal_Interface2{
    @Override
    public void makeSound() {
        System.out.println("멍멍");
    }
    @Override
    public String play(String a, String b) {
        return a+"와 "+b+"κ°€ λ†‰λ‹ˆλ‹€.";
    }
}
  • μΈν„°νŽ˜μ΄μŠ€λŠ” κ·œκ²©ν™”, ν‘œμ€€ν™” ν• λ•Œ μ‚¬μš©ν•œλ‹€.
  • interface ν‚€μ›Œλ“œλ₯Ό 톡해 λ§Œλ“€ 수 μžˆλ‹€.
  • implement ν‚€μ›Œλ“œλ₯Ό 톡해 ν΄λž˜μŠ€μ—μ„œ μ‚¬μš©ν•  수 μžˆλ‹€.
  • μΈν„°νŽ˜μ΄μŠ€λŠ” μΆ”μƒλ©”μ„œλ“œλ₯Ό κ°€μ§ˆμˆ˜ μžˆλ‹€.
    * μΈν„°νŽ˜μ΄μŠ€μ—μ„œ μ„ μ–Έν•œ μΆ”μƒλ©”μ„œλ“œλŠ” λ°˜λ“œμ‹œ implementν•œ ν΄λž˜μŠ€μ—μ„œ κ΅¬ν˜„λΆ€λ₯Ό λ§Œλ“€μ–΄μ€˜μ•Ό ν•œλ‹€. (κ°•μ œ)
  • ν΄λž˜μŠ€μ— 닀쀑 κ΅¬ν˜„, μΈν„°νŽ˜μ΄μŠ€λΌλ¦¬μ˜ 닀쀑 상속
  • λ³€μˆ˜λ₯Ό μ‚¬μš©ν•  경우 static final λ³€μˆ˜λ§Œ μ‚¬μš© κ°€λŠ₯ (μƒμˆ˜)

github java μ‹€μŠ΅ λ‚΄μš©

profile
503 Service Unavailable Error

0개의 λŒ“κΈ€