U E D R , A S I H C RSS

새싹교실/2021/카라반/0405



1. 참여자 명단


단장 이길상 16학번 참여
단원 강필중 21학번 참여
권재민 참여
김민경 참여
이수은 참여

2. 수업

2.1. 진행

1. 장소 : 구글 미츠
2. 시간 : 19시 ~ 21시

2.2. 내용

클래스 실습
  • 계산기를 만들어보자
  • 덧셈, 뺄셈, 제곱 메서드 만들기
  • 생성자와 static 키워드 사용해보기

ppt

3. 코드

3.1. 예제1

public class App3 {
    public static void main(String[] args) {
        
        System.out.println("범위: " +  Calc.range);
        Calc.changeRange(999);

        Calc calc1 = new Calc(99); // <- 객체

        Calc calc2 = new Calc(9);

        calc1.add(30, 70);
        calc2.sub(-1000, 9000);
        // ctrl + f5

        calc1.rec();
        calc2.rec();

        // sysout
        System.out.println("생산번호: " + calc1.numbering + "," + calc2.numbering);

        calc1.add(2.5, 3.5);
        calc1.add(1,2,3,4,5,6,7,8,9,10);

        Calc calc3 = new Calc();
        Calc calc4 = new Calc(9999);

        System.out.println("생산번호: " + calc3.numbering + "," + calc4.numbering);

        System.out.println("제곱: " +  calc3.calculate(2, 4));

    }
}

class Calc { //<-- 클래스
    double recent; //인스턴스 변수
    int numbering;

    static int count = 0; //클래스 변수
    static int range = 9999;

    Calc(){ //<-- 생성자
        count++;
        numbering = count;
    }

    Calc(int r){
        this();
        range = r;
    }

    void add(int a, int b){ // <-- 인스턴스 메서드
        recent = a+b;
        if(recent > range){
            recent = range;
        }
        System.out.println("덧셈: " + recent);
    }

    void add(double a, double b){ // <- 메서드 오버로딩
        recent = a + b;
        System.out.println("실수 덧셈: " + recent);
    }

    void add(int ... numbers){ // <- 가변 인자
        recent = 0;
        for(int i = 0; i< numbers.length; i++){
            recent += numbers[i];
        }
        System.out.println("여러개의 숫자 더하기: " + recent);
    }

    double sub(int a, int b){  
        recent = a-b;
        if(recent < -range){
            recent = -range;
        }
        return recent;
    }

    int calculate(int x, int n){
        if(n == 0){
            return 1;
        }
        return calculate(x, n-1)*x;
    }

    void rec(){
        System.out.println("최근 값:" + recent);
    }

    static void changeRange(int n){ // <-- 클래스 메서드
        range = n;
    }

    // 상속 오버라이딩 패키지 제어자 다형성
}


4. 숙제

1. 회고 작성

2. 시험 잘보기

5. 회고록

권재민
  • 난이도: 7/10
  • 후기: 개념을 이해하는데 많은 도움이 되었어요. 타이핑은 따라갈만은 했는데 다시 생각해보니까 좀 정신없이 따라갔던 것 같아요.

이수은
  • 난이도: /10
  • 후기:

김민경
  • 난이도: 7/10
  • 후기: 실습 병행하니까 이해는 더 쉬웠어요. 가끔씩 쓰던 도중에 화면 넘기셔서 따라쓰기 어렵기도 했는데 따라갈만했습니다.

강필중
  • 난이도: 6/10
  • 후기: 하나의 주제를 가진 채 수업을 진행하니까 좀 더 나은 것 같아요

이길상
  • 후기: 난이도를 낮출 필요가 있어보인다.


6. 숙제 제출

6.1. 권재민

내용

6.2. 이수은

내용

6.3. 김민경

내용
Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2021-05-03 09:27:45
Processing time 0.0236 sec