전체 글

    [7주차] 자바스터디 - 패키지

    목표 자바의 패키지에 대해 학습하세요. 학습할 것 (필수) package 키워드 import 키워드 클래스패스 CLASSPATH 환경변수 -classpath 옵션 접근지시자 package 키워드 pakage? 자바에서 패키지(pakage)란 클래스와 인터페이스를 묶어놓은 집합입니다. 클래스와 인터페이스를 묶어놓음으로써 좀더 효율적으로 관리 할 수 있습니다. 물리적인 의미로는 하나의 경로를 의미하게됩니다. 디렉터리를 의미하고 있기 때문에 패키지에 속해있는 클래스나 인터페이스 파일들은 모두 해당 패키지 명의 디렉터리에 포함되어 있습니다. 패키지는 다른 패키지를 포함할 수 있고 점으로 구분할 수 있습니다. 다음 예제는 Scanner 클래스의 패키지 이름입니다. java.util.Scanner위의 내용으로 Sc..

    [6주차] 자바스터디 - 상속

    목표 자바의 상속에 대해 학습하세요. 학습할 것 (필수) 자바 상속의 특징 super 키워드 메소드 오버라이딩 다이나믹 메소드 디스패치 (Dynamic Method Dispatch) 추상 클래스 final 키워드 Object 클래스 자바 상속의 특징 상속(inheritance) 상속은 하위클래스가 상위클래스로부터 필드와 메소드를 물려받을 수 있는 특징을 가지고 있다. 차량이 있을 때 자전거, 자동차, 기차 등으로 하위클래스를 생성할 수 있다. 이때 하위클래스는 차량으로부터 상속받는다는 의미로 extends 라고 입력한다. 이때 차량에 정의될 수 있는 필드와 메소드는 하위클래스에서 상속받아 사용할 수 있다. 상위클래스를 super 클래스, parent 클래스, 또는 base 클래스라고 부르고 하위클래스를 ..

    [JAVA] 두 날짜 사이의 기간 구하기 (COS Pro 2급 문제 풀이)

    문제3 시작 날짜와 끝 날짜가 주어질 때, 두 날짜가 며칠만큼 떨어져 있는지(D-day)를 구하려 합니다. 이를 위해 다음과 같이 3단계로 간단히 프로그램 구조를 작성했습니다. (단, 윤년은 고려하지 않습니다.) 1단계. 시작 날짜가 1월 1일로부터 며칠만큼 떨어져 있는지 구합니다. 2단계. 끝 날짜가 1월 1일로부터 며칠만큼 떨어져 있는지 구합니다. 3단계. (2단계에서 구한 날짜) - (1단계에서 구한 날짜)를 구합니다.시작 날짜의 월, 일을 나타내는 startMonth, startDay, 끝 날짜의 월, 일을 나타내는 endMonth, endDay가 매개변수로 주어질 때, 시작 날짜와 끝 날짜가 며칠만큼 떨어져 있는지 return 하도록 solution 메소드를 작성했습니다. 이때, 위 구조를 참고..

    [JAVA] 회원 등급에 따른 할인율 구하기 (COS Pro 2급 문제 풀이)

    문제2 A 쇼핑몰에서는 회원 등급에 따라 할인 서비스를 제공합니다. 회원 등급에 따른 할인율은 다음과 같습니다. (S = 실버, G = 골드, V = VIP) 등급 할인율 "S" 5% "G" 10% "V" 15% 상품의 가격 price와 구매자의 회원 등급을 나타내는 문자열 grade가 매개변수로 주어질 때, 할인 서비스를 적용한 가격을 return 하도록 solution 메소드를 완성해주세요. 매개변수 설명 상품의 가격 price와 회원 등급 grade가 매개변수로 주어집니다. price는 100 이상 100,000 이하의 100단위 자연수입니다. grade는 "S", "G", "V" 세 가지 중 하나입니다. return 값 설명 할인한 가격을 return 하도록 solution 메소드를 작성해주세요...

    [JAVA] 티셔츠 사이즈별 개수 구하기 (COS Pro 2급 문제 풀이)

    문제1 A 학교에서는 단체 티셔츠를 주문하기 위해 학생별로 원하는 티셔츠 사이즈를 조사했습니다. 선택할 수 있는 티셔츠 사이즈는 작은 순서대로 "XS", "S", "M", "L", "XL", "XXL" 총 6종류가 있습니다. 학생별로 원하는 티셔츠 사이즈를 조사한 결과가 들어있는 배열 shirtSize가 매개변수로 주어질 때, 사이즈별로 티셔츠가 몇 벌씩 필요한지 가장 작은 사이즈부터 순서대로 배열에 담아 return 하도록 solution 메소드를 완성해주세요. 매개변수 설명 학생별로 원하는 사이즈를 조사한 결과가 들어있는 배열 shirtSize가 solution 메소드의 매개변수로 주어집니다. shirtSize 의 길이는 1 이상 100 이하입니다. shirtSize 에는 치수를 나타내는 문자열 "X..

    [5주차] 자바스터디 - 클래스

    목표 자바의 Class에 대해 학습하세요. 학습할 것 (필수) 클래스 정의하는 방법 객체 만드는 방법 (new 키워드 이해하기) 메소드 정의하는 방법 생성자 정의하는 방법 this 키워드 이해하기 마감일시 2020년 12월 19일 토요일 오후 1시까지. 과제 (Optional) int 값을 가지고 있는 이진 트리를 나타내는 Node 라는 클래스를 정의하세요. int value, Node left, right를 가지고 있어야 합니다. BinrayTree라는 클래스를 정의하고 주어진 노드를 기준으로 출력하는 bfs(Node node)와 dfs(Node node) 메소드를 구현하세요. DFS는 왼쪽, 루트, 오른쪽 순으로 순회하세요. 0. 개념 클래스 클래스는 객체를 만들기 위한 모형이면서 틀이다. (temp..

    [4주차] 자바스터디 - 제어문

    목표 자바가 제공하는 제어문을 학습하세요. 학습할 것 (필수) 선택문 반복문 과제 (옵션) 과제 0. JUnit 5 학습하세요. 인텔리J, 이클립스, VS Code에서 JUnit 5로 테스트 코드 작성하는 방법에 익숙해 질 것. 이미 JUnit 알고 계신분들은 다른 것 아무거나! 더 자바, 테스트강의도 있으니 참고하세요~ 과제 1. live-study 대시 보드를 만드는 코드를 작성하세요. 깃헙 이슈 1번부터 18번까지 댓글을 순회하며 댓글을 남긴 사용자를 체크 할 것. 참여율을 계산하세요. 총 18회에 중에 몇 %를 참여했는지 소숫점 두자리가지 보여줄 것. Github 자바 라이브러리를 사용하면 편리합니다. 깃헙 API를 익명으로 호출하는데 제한이 있기 때문에 본인의 깃헙 프로젝트에 이슈를 만들고 테스..

    [3주차] 자바스터디 - 연산자

    목표 자바가 제공하는 다양한 연산자를 학습하세요. 학습할 것 산술 연산자 비트 연산자 관계 연산자 논리 연산자 instanceof assignment(=) operator 화살표(->)연산자 3항 연산자 연산자 우선 순위 (optional) Java 13. switch 연산자 0.연산자의 정의 다양한 연산자에 대해서 알아보기 전에 연산자의 개념을 알아볼 필요가 있다. 연산자(operator)는 +,-,*,/ 같이 이미 정의되어있는 연산을 수행하는 문자 또는 문자 조합의 기호를 말한다. 피연산자(operand)는 연산(operation)에 참여하는 변수나 상수를 말한다. 연산자와 피연산자로 이루어진 연산식을 우리는 표현식 이라고 한다. 1.산술 연산자 산술 연산자의 종류는 +, -, *, /, % 가 있다..