[[TableOfContents]] = 참여자 명단 = || 단장 || 이길상 || 16학번 || 참여 || ||<|4> 단원 || 강필중 ||<|4> 21학번 || 참여 || || 권재민 || 참여 || || 김민경 || 참여 || || 이수은 || 참여 || = 수업 = == 진행 == 1. 장소 : 구글 미츠 2. 시간 : 19시 ~ 21시 == 내용 == '''클래스 실습''' * 계산기를 만들어보자 * 덧셈, 뺄셈, 제곱 메서드 만들기 * 생성자와 static 키워드 사용해보기 '''ppt''' * [[https://drive.google.com/file/d/1RQ6gkH1nWcLxQDt93m_mHp0EZcjRQM12/view?usp=sharing]] = 코드 = == 예제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; } // 상속 오버라이딩 패키지 제어자 다형성 } }}} = 숙제 = 1. 회고 작성 2. 시험 잘보기 = 회고록 = '''권재민''' * 난이도: 7/10 * 후기: 개념을 이해하는데 많은 도움이 되었어요. 타이핑은 따라갈만은 했는데 다시 생각해보니까 좀 정신없이 따라갔던 것 같아요. ---- '''이수은''' * 난이도: /10 * 후기: ---- '''김민경''' * 난이도: 7/10 * 후기: 실습 병행하니까 이해는 더 쉬웠어요. 가끔씩 쓰던 도중에 화면 넘기셔서 따라쓰기 어렵기도 했는데 따라갈만했습니다. ---- '''강필중''' * 난이도: 6/10 * 후기: 하나의 주제를 가진 채 수업을 진행하니까 좀 더 나은 것 같아요 ---- '''이길상''' * 후기: 난이도를 낮출 필요가 있어보인다. ---- = 숙제 제출 = == 권재민 == {{{ 내용 }}} == 이수은 == {{{ 내용 }}} == 김민경 == {{{ 내용 }}} == 강필중 == {{{ 내용 }}} ---- ----------------------------------- [새싹교실/2021] [새싹교실/2021/카라반]