개발공부/Java(5)
-
[Java 에러] IllegalArgumentException
IllegalArgumentException RuntimeException 을 상속하는 에러. Thrown to indicate that a method has been passed an illegal or inappropriate argument. -> 메서드에 잘못된 argument가 입력되었음을 보여주기 위해 발생하는 에러 HTML 삽입 미리보기할 수 없는 소스 String binomial 에 연사자로 +, -, *만 제시되는 조건이 있으므로, "+", "-", "*" 외에 다른 연산자가 입력될 경우, 메서드에 잘못된 인자가 입력되었다는 예외 메세지를 발생시킬 수 있다.
2024.01.23 -
[자바 Java] 배열 오름차순 정렬, 최대값 활용
백준 알고리즘 2480문제 1에서부터 6까지의 눈을 가진 3개의 주사위를 던져서 다음과 같은 규칙에 따라 상금을 받는 게임이 있다. 같은 눈이 3개가 나오면 10,000원+(같은 눈)×1,000원의 상금을 받게 된다.같은 눈이 2개만 나오는 경우에는 1,000원+(같은 눈)×100원의 상금을 받게 된다.모두 다른 눈이 나오는 경우에는 (그 중 가장 큰 눈)×100원의 상금을 받게 된다. 예를 들어, 3개의 눈 3, 3, 6이 주어지면 상금은 1,000+3×100으로 계산되어 1,300원을 받게 된다. 또 3개의 눈이 2, 2, 2로 주어지면 10,000+2×1,000 으로 계산되어 12,000원을 받게 된다. 3개의 눈이 6, 2, 5로 주어지면 그중 가장 큰 값이 6이므로 6×100으로 계산되어 600..
2024.01.16 -
객체지향 개념_접근제어자의 필요성
자바에서 접근제어자는 총 네 가지다. 1) private -> 클래스 내부에서만 사용 가능 2) default(package-private) -> 같은 패키지 내에서만 사용 가능 3) protected -> 같은 패키지 내에서 사용 가능 + 상속된 클래스에서도 사용 가능 4) public -> 전체 전체 사용 가능 접근제어가 필요한 이유는? 예를 들어, 스피커 사용을 위한 소프트웨어를 만든다. 이때 음량이 100을 넘어가면 제품에 고장이 생길 수 있으므로, 음량 100을 넘기지 않도록 아래와 같이 작업했다. public class Speaker { private int volume; Speaker(int volume) { this.volume = volume; } void volumeUp() { if(v..
2023.12.30 -
객체지향 개념_생성자의 필요성
생성자가 없어도 메서드를 통해 자바에서 객체지향 프로그램을 활용할 수는 있다. public class MemberInit { String name; int age; int grade; void initMember(String name, int age, int grade) { this.name = name; this.age = age; this.grade = grade; } } void initMember(String name, int age, int grade)와 같이 초기화를 실행하는 메서드를 클래스에 만든다. 그리고 아래와 같이 실행 클래스에서 이 메서드를 호출할 수 있다. public static void main(String[] args) { MemberInit member1 = new Membe..
2023.12.30 -
객체지향 개념_Class
학생 성적 데이터를 변수에 저장 -> 출력 public class ClassStart { public static void main(String[] args) { String[] studentNames = {"학생1", "학생2"}; int[] studentAges = {15, 16}; int[] studentGrades = {90, 80}; for(int i = 0; i < studentNames.length; i++){ System.out.println("이름: " + studentNames[i] + "나이: " + studentAges[i] + "성적: " + studentGrades[i]); } } } 위처럼 배열로 데이터를 정리할 때 문제점. 1. 데이터를 추가할 때 하나씩 일일이 추가해주어야 ..
2023.12.29