More actions
회고
임지민
난이도
중하(이미 알고 있던 내용의 복습)
수업내용
*객체란? 클래스: 붕어빵틀 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; }
}