Difference between r1.1 and the current
@@ -2,11 +2,11 @@
= 참여자 명단 =
|| 단장 || 이길상 || 16학번 || - ||
||<|4> 단원 || 강필중 ||<|4> 21학번 || - ||
|| 권재민 || - ||
|| 김민경 || - ||
|| 이수은 || - ||
|| 단장 || 이길상 || 16학번 || 참여 ||
||<|4> 단원 || 강필중 ||<|4> 21학번 || 참여 ||
|| 권재민 || 참여 ||
|| 김민경 || 참여 ||
|| 이수은 || 참여 ||
= 수업 =
== 진행 ==
@@ -14,40 +14,138 @@
2. 시간 : 19시 ~ 21시
== 내용 ==
'''ppt'''
== 예제1 ==
{{{
}}}
= 숙제 =
1. 회고 작성
'''권재민'''
'''이수은'''
* 난이도: /10
* 후기:
----
'''김민경'''
'''강필중'''
'''이길상'''
= 숙제 제출 =
== 내용 ==
'''주제'''
* 설명
'''클래스 실습'''
* 계산기를 만들어보자
* 덧셈, 뺄셈, 제곱 메서드 만들기
* 생성자와 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.
2. 시험 잘보기
= 회고록 ='''권재민'''
* 난이도: /10
* 후기:
* 난이도: 7/10
* 후기: 개념을 이해하는데 많은 도움이 되었어요. 타이핑은 따라갈만은 했는데 다시 생각해보니까 좀 정신없이 따라갔던 것 같아요.
----'''이수은'''
* 난이도: /10
* 후기:
----
'''김민경'''
* 난이도: /10
* 후기:
* 난이도: 7/10
* 후기: 실습 병행하니까 이해는 더 쉬웠어요. 가끔씩 쓰던 도중에 화면 넘기셔서 따라쓰기 어렵기도 했는데 따라갈만했습니다.
----'''강필중'''
* 난이도: /10
* 후기:
* 난이도: 6/10
* 후기: 하나의 주제를 가진 채 수업을 진행하니까 좀 더 나은 것 같아요
----'''이길상'''
* 후기:
* 후기: 난이도를 낮출 필요가 있어보인다.
----= 숙제 제출 =
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; } // 상속 오버라이딩 패키지 제어자 다형성 }
5. 회고록 ¶
권재민
- 난이도: 7/10
- 후기: 개념을 이해하는데 많은 도움이 되었어요. 타이핑은 따라갈만은 했는데 다시 생각해보니까 좀 정신없이 따라갔던 것 같아요.
이수은
- 난이도: /10
- 후기:
김민경
- 난이도: 7/10
- 후기: 실습 병행하니까 이해는 더 쉬웠어요. 가끔씩 쓰던 도중에 화면 넘기셔서 따라쓰기 어렵기도 했는데 따라갈만했습니다.
강필중
- 난이도: 6/10
- 후기: 하나의 주제를 가진 채 수업을 진행하니까 좀 더 나은 것 같아요
이길상
- 후기: 난이도를 낮출 필요가 있어보인다.