Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

새싹교실/2022/Java보시던지/04.28: Difference between revisions

From ZeroWiki
No edit summary
No edit summary
Line 6: Line 6:
  *객체란?
  *객체란?
     클래스: 붕어빵틀 VS 객체: 붕어빵
     클래스: 붕어빵틀 VS 객체: 붕어빵
* 객체 간의 관계
* 객체 간의 관계
     집합 관계: 부품과 완성품의 관계. 자동차와 엔진의 관계
     집합 관계: 부품과 완성품의 관계. 자동차와 엔진의 관계
     사용 관계: 객체간의 상호작용(동등함)
     사용 관계: 객체간의 상호작용(동등함)
     상속 관계: 부모 객체를 기반으로 자식 객체를 새성하는 관계. 기계와 자동차 ( 큰범주가 되는것)(집합관계와는 다름)
     상속 관계: 부모 객체를 기반으로 자식 객체를 새성하는 관계. 기계와 자동차 ( 큰범주가 되는것)(집합관계와는 다름)
*** 부모 객체(상위 객체) : 종류
    - 부모 객체(상위 객체) : 종류
*** 자식 객체(하위 객체): 구체적인 사물
    - 자식 객체(하위 객체): 구체적인 사물
  *객체와 클래스  
  *객체와 클래스  
  *클래스 선언  
  *클래스 선언  
Line 23: Line 23:
     라이브러리 클래스, 실행클래스 (main()메소드로 실행하는 클래스 (단 하나))
     라이브러리 클래스, 실행클래스 (main()메소드로 실행하는 클래스 (단 하나))
  *클래스의 구성 멤버  
  *클래스의 구성 멤버  
*** 필드
    - 필드
*** 생성자:new 연산자로 호출, 객체 생성시 초기화 담당
    - 생성자:new 연산자로 호출, 객체 생성시 초기화 담당
*** 메소드
    - 메소드
  *생성자 오버로딩
  *생성자 오버로딩
     overload(더 싣는다)
     overload(더 싣는다)
Line 40: Line 40:
Q.객체간의 관계에서 집합관계와 사용관계의 구체적인 사용방법이 궁금해요~
Q.객체간의 관계에서 집합관계와 사용관계의 구체적인 사용방법이 궁금해요~


=== [[박창훈]] ===
=== 박창훈 ===
===== 난이도 =====
===== 난이도 =====
이해 가능할 정도의 수준이었다.
이해 가능할 정도의 수준이었다.
===== 수업내용 =====
===== 수업내용 =====
* 객체
* 객체
* 필드, 메소드, 생성자
* 필드, 메소드, 생성자
* 객체 간의 관계
* 객체 간의 관계
* 클래스 등
* 클래스 등
===== 새롭게 배운 내용 =====
===== 새롭게 배운 내용 =====
* 객체는 속성을 가지고, 식별 가능하며, 독립적으로 존재한다.
* 객체는 속성을 가지고, 식별 가능하며, 독립적으로 존재한다.
* 객체는 다른 객체와 메소드로 상호작용한다.
* 객체는 다른 객체와 메소드로 상호작용한다.
* 클래스(설계도) → 객체(상품) (new연산자를 통해 생성)
* 클래스(설계도) → 객체(상품) (new연산자를 통해 생성)
* 필드와 변수의 차이점
* 필드와 변수의 차이점
     필드 → Class 이하 (라이브러리 클래스)
     필드 → Class 이하 (라이브러리 클래스)
     변수 → main 이하 (실행하는 부분)
     변수 → main 이하 (실행하는 부분)
* this의 의미
* this의 의미
* 생성자 (코드 줄일 수 있음)
* 생성자 (코드 줄일 수 있음)
* 참조타입 수업하고 살짝 아리까리 했는데 이번 수업으로 뭔가 깨우쳤읍니다.
* 참조타입 수업하고 살짝 아리까리 했는데 이번 수업으로 뭔가 깨우쳤읍니다.
===== 느낀점/건의사항 =====
===== 느낀점/건의사항 =====
Java 재밌네용 .. ㅎㅎ
Java 재밌네용 .. ㅎㅎ


== 과제 ==
== 과제 ==
* [[임지민]]
* [[임지민]]
** 8958: OX퀴즈
  * 8958: OX퀴즈
import java.util.Scanner;
import java.util.Scanner;


Line 92: Line 92:
}
}


** 클래스생성문제
  * 클래스생성문제
public class Three {
public class Three {


Line 137: Line 137:
this.math = math;
this.math = math;
}
}
}
* 박창훈
  * 8958: OX퀴즈
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int num = sc.nextInt();
int sum = 0;
int a = 1;
for(int i=0; i<num; i++) {
String quiz = sc.next();
for (int j=0; j<quiz.length(); j++) {
if(quiz.charAt(j)=='O') {
sum += a;
a++;
}
else {
a = 1;
}
}
System.out.println(sum);
sum = 0;
a = 1;
}
sc.close();
}
}
  * 클래스 생성 문제
public class Three {
public static void main(String[] args) {
Grade myGrade = new Grade(100, 90, 70);
System.out.println(myGrade.avg);
}
}
public class Grade {
int avg;
Grade(int a, int b, int c){
avg = (a+b+c)/3;
}
}
}



Revision as of 13:36, 10 May 2022

회고

임지민

난이도

중하(이미 알고 있던 내용의 복습)

수업내용
*객체란?
   클래스: 붕어빵틀 VS 객체: 붕어빵
* 객체 간의 관계
   집합 관계: 부품과 완성품의 관계. 자동차와 엔진의 관계
   사용 관계: 객체간의 상호작용(동등함)
   상속 관계: 부모 객체를 기반으로 자식 객체를 새성하는 관계. 기계와 자동차 ( 큰범주가 되는것)(집합관계와는 다름)
   - 부모 객체(상위 객체) : 종류
   - 자식 객체(하위 객체): 구체적인 사물
*객체와 클래스 
*클래스 선언 
   관례에 맞게 작성
   IceCream (x Icecream)
*객체 생성과 클래스 변수 
   new를 쓰는 것은 모두 참조타입
   객체는 저 멀리 있고, 클래스로 선언된 변수에 객체의 번지를 저장
   객체는 heap영역에 생성(얼마든지 커질수 있어서 heap에다가 분리)
   클래스 변수는 stack 영역에 저장
   라이브러리 클래스, 실행클래스 (main()메소드로 실행하는 클래스 (단 하나))
*클래스의 구성 멤버 
   - 필드
   - 생성자:new 연산자로 호출, 객체 생성시 초기화 담당
   - 메소드
*생성자 오버로딩
   overload(더 싣는다)
새롭게 배운 내용
*전전주차 복습 
   큰수를 다루는 문제 → 문자열로 받아서 해결 
   형변환(문자열->정수) Integer.parseInt()
*메인이 없는 클래스 // 라이브러리 클래스
*클래스의 정보(그안에 있는 변수들) // 필드
*. //~의
느낀점/건의사항

질문에 대한 자세한 답변 항상 감사합니다! 다음주 수업이 기대됩니당 Q.객체간의 관계에서 집합관계와 사용관계의 구체적인 사용방법이 궁금해요~

박창훈

난이도

이해 가능할 정도의 수준이었다.

수업내용
* 객체
* 필드, 메소드, 생성자
* 객체 간의 관계
* 클래스 등
새롭게 배운 내용
* 객체는 속성을 가지고, 식별 가능하며, 독립적으로 존재한다.
* 객체는 다른 객체와 메소드로 상호작용한다.
* 클래스(설계도) → 객체(상품) (new연산자를 통해 생성)
* 필드와 변수의 차이점
   필드 → Class 이하 (라이브러리 클래스)
   변수 → main 이하 (실행하는 부분)
* this의 의미
* 생성자 (코드 줄일 수 있음)
* 참조타입 수업하고 살짝 아리까리 했는데 이번 수업으로 뭔가 깨우쳤읍니다.
느낀점/건의사항

Java 재밌네용 .. ㅎㅎ

과제

* 임지민
 * 8958: OX퀴즈

import java.util.Scanner;

public class Main {

public static void main(String[] args) { Scanner sc = new Scanner(System.in); int num = sc.nextInt();

for(int i = 0; i< num; i++) { String quizStrings = sc.next();

int sum = 0; int plus = 0;

for(int j = 0; j < quizStrings.length(); j++) { if(quizStrings.charAt(j) == 'O') { plus++; sum += plus; } else { plus = 0; } } System.out.println(sum); } sc.close(); } }

 * 클래스생성문제

public class Three {

public static void main(String[] args) { Grade myGrade = new Grade(100, 90, 70); System.out.println(myGrade.avg); } }

class Grade { //multiple class in one file(상위클래스만 public 섭클래스는 private조차 못붙임) private int korean = 0; private int math = 0; private int english = 0; public int avg = 0;

Grade (int korean, int math, int english){ this.setKorean(korean); this.setMath(math); this.setEnglish(english); avg = (korean+math+english)/3; }

public int getKorean() { return korean; }

public void setKorean(int korean) { this.korean = korean; }

public int getEnglish() { return english; }

public void setEnglish(int english) { this.english = english; }

public int getMath() { return math; }

public void setMath(int math) { this.math = math; } }

* 박창훈
  * 8958: OX퀴즈

import java.util.Scanner;

public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int num = sc.nextInt(); int sum = 0; int a = 1; for(int i=0; i<num; i++) { String quiz = sc.next(); for (int j=0; j<quiz.length(); j++) { if(quiz.charAt(j)=='O') { sum += a; a++; } else { a = 1; } } System.out.println(sum); sum = 0; a = 1;

} sc.close(); }

}

  * 클래스 생성 문제

public class Three {

public static void main(String[] args) { Grade myGrade = new Grade(100, 90, 70); System.out.println(myGrade.avg); } }

public class Grade { int avg; Grade(int a, int b, int c){ avg = (a+b+c)/3; }

}