본문 바로가기

전체 글

(108)
패스트캠퍼스 환급챌린지 53일차 미션 (3월 24일) : 시그니처 백엔드 Path 초격차 패키지 Online. 강의 후기 강의 내용 [1] BookArray 클래스를 만들어 사용하는 방법 [2] ObjectArray 클래스를 만들어 사용하는 방법 [1] BookArray 클래스를 만들어 사용하는 방법 배열처럼 동작하는 클래스를 통해 책을 핸들링하는 방법 Q. 책 3권을 배열에 저장하고 출력하시오. Book(데이터 자료형)을 먼저 만들어야 함 // 잘 설계된 VO, DTO public class Book { private String title; private int price; private String company; private String author; // 기본 생성자 public Book() { } // 생성자 오버로딩 public Book(String title, int price, String company,..
패스트캠퍼스 환급챌린지 52일차 미션 (3월 23일) : 시그니처 백엔드 Path 초격차 패키지 Online. 강의 후기 강의 내용 [1] 배열처럼 동작하는 API를 만드는 방법 [2] IntArray 클래스를 만들어 사용하는 방법 [1] 배열처럼 동작하는 API를 만드는 방법 배열을 조작하려면 동작 방식을 알아야 함 동작에 의미를 부여하는 이유? 동작을 클래스의 메서드로 만들기 위함 예) 자판기 : 이미 만들어진 기계(object) 사람 : 사용자 동작 방법만 알면 사용 가능(자판기의 내부 구동 방식을 알 필요 없음) Q. 정수 5개를 배열에 저장하고 출력하시오.(기존 배열) 배열은 처음에 만들 때 배열의 길이를 지정해야 함(단점) 배열의 길이를 자동으로 늘릴 수 있어야 배열을 효과적으로 사용 가능 public class IntArrayBasicTest { public static void main(String[] arg..
패스트캠퍼스 환급챌린지 51일차 미션 (3월 22일) : 시그니처 백엔드 Path 초격차 패키지 Online. 강의 후기 강의 내용 [1] Java에서 제공하는 클래스 [2] 다운 받아 사용하는 클래스 [1] Java에서 제공하는 클래스 Random(java.util) 주어진 범위 내에서 난수를 생성하는 클래스 # 난수(Random number) : 예측이 불가능한 무작위의 수 nextInt(45) : 0 이상 45 미만의 난수를 반환(0~44 : 45개) nextInt(45) + 1 : 1부터 45 사이의 난수를 반환 nextInt(10) : 0 이상 10 미만의 난수를 반환 nextInt(100) : 0 이상 100 미만의 난수를 반환 난수 6개를 뽑아 배열에 저장하는 프로그램(중복X) 이중 for 반복문을 사용하여 배열에 중복되지 않는 값만 저장한다. (1) 반복문을 통해 난수를 생성 (2) 이전 인덱스들과 비교하여 ..
패스트캠퍼스 환급챌린지 50일차 미션 (3월 21일) : 시그니처 백엔드 Path 초격차 패키지 Online. 강의 후기 강의 내용 [1] Object 클래스의 toString() [2] 직접 만들어 사용하는 클래스 [1] Object 클래스의 toString() 객체가 생성된 메모리의 번지(16진수 형태)를 문자열로 바꿔 출력하는 기능 모든 객체의 번지를 문자열로 출력할 수 있도록 Object클래스에 만들어놓음 일반적으로 모든 클래스는 Object를 상속 받아 toString()를 재정의하여 사용한다. (1) 재정의 : 다른 용도로 사용 (2) 재정의하지 않음 : 원래 기능 그대로 사용 Q. Object 클래스의 toString()를 이용하여 객체의 모든 값을 문자열로 출력하시오. # super : 부모를 가리키는 포인터 # super.toString() : 재정의된 메서드 내에서 상위 클래스의 메서드를 호출하는 방법 #..
패스트캠퍼스 환급챌린지 49일차 미션 (3월 20일) : 시그니처 백엔드 Path 초격차 패키지 Online. 강의 후기 강의 내용 [1] Object 클래스를 이용하여 객체를 생성하는 방법 [2] Object 클래스를 활용한 다형성 [1] Object 클래스를 이용하여 객체를 생성하는 방법 Object 모든 클래스의 부모 클래스(최상위 클래스) 자바에서 제공하는 API 중 가장 먼저 만들어진 클래스 자바의 모든 API는 상속 관계로 이뤄짐(부모를 이용하면 효율적인 코드 작성 가능) Q. 클래스 한 개를 만들면 기본적으로 생략되는 코드를 쓰시오. 코드를 적지 않아도 컴파일러가 자동으로 코드를 넣는다. (1) default package : 자바에서 가장 많이 사용하는 클래스들을 모아놓은 묶음(패키지) (2) java.lang.Object(최상위 클래스) : 모든 클래스의 부모(기본적으로 Object가 상속된다.) (3) d..
패스트캠퍼스 환급챌린지 48일차 미션 (3월 19일) : 시그니처 백엔드 Path 초격차 패키지 Online. 강의 후기 강의 내용 [1] 인터페이스와 다중 상속 [2] 추상 클래스 vs. 인터페이스 [3] 학습 정리 퀴즈 [1] 인터페이스와 다중 상속 일반적으로 자바는 단일 상속만 지원하는데, 다중 상속을 모방한 인터페이스를 통해 다중 상속을 지원(인터페이스는 n개 구현 가능(무한)) 객체지향에서 클래스와 상속을 다루는 다른 언어(C++, C#)에서는 다중 상속을 지원한다. *인터페이스 : 다형성 보장과 다중 상속을 지원하기 위해 등장한 개념 *단일 상속 : 하위 클래스가 클래스 하나만을 상속 받는 형태 *다중 상속 : 하위 클래스가 클래스 여러개를 상속 받는 형태 다중 상속의 특징 장점 : 자식 클래스의 기능 막강 단점 : 자식 클래스에서 부모가 갖는 동작을 사용할 때 어떤 부모의 것인지 알아야 함(복잡) Dog는 [A..
패스트캠퍼스 환급챌린지 47일차 미션 (3월 18일) : 시그니처 백엔드 Path 초격차 패키지 Online. 강의 후기 강의 내용 [1] 인터페이스의 등장 [2] 인터페이스와 다형성 [1] 인터페이스의 등장 일반 클래스와 추상 클래스 Radio(하위 클래스), TV(하위 클래스), RemoCon(상위 클래스) *RemoCon(상위 클래스) : Radio와 TV의 공통 기능을 정의(채널 올림/내림, 소리 올림/내림) 일반 클래스 하위 클래스(Radio/TV)가 상위 클래스(RemoCon)의 메서드를 재정의해도 되고, 안 해도 되기 때문에 다형성을 보장할 수 없음 추상 클래스 하위 클래스의 재정의를 강제함으로써 다형성이 보장되지만, 구현 메서드로 인해 하위 클래스가 오동작 될 수 있음 추상 메서드 하위 클래스에서 자신에 맞게 재정의하여 사용해야 함 chUp(); chDown(); volUp(); volDown(); 구현 메서..
패스트캠퍼스 환급챌린지 46일차 미션 (3월 17일) : 시그니처 백엔드 Path 초격차 패키지 Online. 강의 후기 강의 내용 [1] 다형성을 보장한다는 의미 [2] 추상 클래스와 다형성 [1] 다형성을 보장한다는 의미 부모가 자식에게 명령을 하면 자식이 무조건 동작(반응)해야 함 다형성을 보장하려면? 다형성의 전제 조건 4가지를 무조건 지켜야 함 (1) 클래스가 상속 관계여야 함 (2) 반드시 재정의(Override) 되어야 함 (3) UpCasting : 객체 생성 방법(자식 클래스들이 서로 다르게 반응하는 원리) (4) 동적 바인딩 재정의를 하지 않으면? 다형성이 보장되지 않음 부모가 자식에게 명령했을 때 자식이 제대로 반응하지 않음(오동작) Q. Dog와 Cat 클래스를 설계하고 동작시켜 보시오. public class Animal { // 동물 : 개와 고양이를 포괄 public void eat() { Sys..