ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [JAVA] 상속, 생성자, super
    JAVA 2023. 7. 16. 16:24
    • Calculator를 상속한 SubCalculator 클래스
    • 생성자 인자 left, right
    class Calculator {
        int left,right;
    
        public void setCalculator(int left,int right){
            this.left = left;
            this.right = right;
        }
    
        public void sum(){ //더하기
            System.out.println(this.left + this.right);
        }
    
        public void avg(){ //평균
            System.out.println((this.left+this.right)/2);
        }
    }
    
    class SubCalculator extends Calculator { //Calculator를 상속한 SubCalculator 클래스
        public SubCalculator(int left,int right) { //생성자 인자 left,right
            this.left = left;
            this.right = right;
        }
    
        public void sub(){
            System.out.println(this.left - this.right);
        }
    }
    
    public class CalculatorDemo {
        public static void main(String[] args) throws Exception {
            SubCalculator c1 = new SubCalculator(20,10);
            c1.sum();
            c1.avg();
            c1.sub();
        }
    30
    15
    10

     

    • Calculator 클래스(상위 클래스)의 생성자 정의
    • SubCalculator 클래스(하위 클래스)에서 super 키워드로 상위 클래스의 생성자 사용
    class Calculator {
        int left,right;
    
        public Calculator(int left,int right){ //부모클래스의 생성자
            this.left = left;
            this.right = right;
        }
    
        public void sum(){ //더하기
            System.out.println(this.left + this.right);
        }
    
        public void avg(){ //평균
            System.out.println((this.left+this.right)/2);
        }
    }
    
    class SubCalculator extends Calculator { //Calculator를 상속한 SubCalculator 클래스
        public SubCalculator(int left,int right) { 
            super(left,right); //super 키워드 사용 -> 부모 클래스의 생성자
        }
    
        public void sub(){
            System.out.println(this.left - this.right);
        }
    }
    
    public class CalculatorDemo {
        public static void main(String[] args) throws Exception {
            SubCalculator c1 = new SubCalculator(20,10);
            c1.sum();
            c1.avg();
            c1.sub();
        }
    }
    30
    15
    10
Designed by Tistory.