클래스 내 같은 이름의 메소드를 매개변수 유형과 개수를 다르게하여 같은 이름의 메소드를 여러개 선언하는 것을 메소드 오버로딩(Method Overloading)이라 한다. 메소드 오버로딩이 필요한 이유는 매개값을 다양하게 받아 처리할 수 있도록 하기 위함이다. 주의점 : 1. 매개변수의 이름이 다르다고 해서 메소드 오버로딩이라 하는 것이 아니라 매개변수의 개수나 매개변수 타입 또는 순서가 달라야 메소드 오버로딩이라 할 수 있다. 2. 리턴 타입만 다르고 매개 변수가 동일하면 이것 또한 메소드 오보로딩이라 할 수 없다. 메소드 오버로딩의 가장 대표적인 예 : System.out.println() 메소드 println() 메소드는 호출할 때 주어진 매개 값의 타입에 따라서 다음과 같이 오버로딩된 printl..
생성자(Constructor)는 new 연산자로 클래스로부터 객체를 생성할 때 호출되어 객체의 초기화를 담당한다. 생성자를 실행하지 않고는 클래스로부터 객체를 만들 수 없다. new 연산자에 의해 생성자가 성공적으로 실행되면 힙(heap)영역에 객체가 생성되고 객체의 주소(번지)가 리턴된다. 1. 기본생성자 모든 클래스는 생성자가 반드시 존재하며, 생성자를 1개 이상을 가질 수 있다. 코드 작성시 클래스내부에 생성자 선언을 생략하였다면 컴파일러는 다음과 같이 블록 내용이 비어있는 기본생성자를 바이트 코드에 자동으로 추가한다. public class Car{ } ↓ 컴파일 public class Car{ public Car() {} // 자동추가 } 그렇기에 클래스에 생성자를 선언하지 않아도 기본생성자를 ..
문제 설명 매운 것을 좋아하는 Leo는 모든 음식의 스코빌 지수를 K 이상으로 만들고 싶습니다. 모든 음식의 스코빌 지수를 K 이상으로 만들기 위해 Leo는 스코빌 지수가 가장 낮은 두 개의 음식을 아래와 같이 특별한 방법으로 섞어 새로운 음식을 만듭니다. 섞은 음식의 스코빌 지수 = 가장 맵지 않은 음식의 스코빌 지수 + (두 번째로 맵지 않은 음식의 스코빌 지수 * 2) Leo는 모든 음식의 스코빌 지수가 K 이상이 될 때까지 반복하여 섞습니다. Leo가 가진 음식의 스코빌 지수를 담은 배열 scoville과 원하는 스코빌 지수 K가 주어질 때, 모든 음식의 스코빌 지수를 K 이상으로 만들기 위해 섞어야 하는 최소 횟수를 return 하도록 solution 함수를 작성해주세요. 제한 사항 scovil..
위 코드를 CMD에서 실행 이는 이클립스에서 Run Configurations를 통해서 실행한 것 과 동일하다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 package test; public class upgrade_for { public static void main(String[] args) { int [] score = {95,71,84,93,87}; int sum = 0; for ( int i: score) { sum += i; } System.out.println(sum); System.out.println((double)sum/score.length); } } Colored by Color Scripter cs 배열이나 컬렉션을 좀 더 쉽게 처리하기 위해 사용할 수 있는 향상된 For문으로써 파이썬과 R의 For문과 비슷하다. 향상된 For문은 증감식을 사용하지 않고 (..
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 package chapter05; import java.util.Scanner; public class Excer04 { public static void mai..
123456789101112131415161718192021222324package Chapter05; public class solotest { public static void main(String[] args) { // 기본자료형과 참조자료형의 차이점 int a = 10; int b = a; a = 20; System.out.println(b); // 값을 참조하기 때문에 20을 출력 int[] c = {1,2,3}; int[] d = c; c[0] = 4; System.out.println(d[0]); // 주소를 참조하기 때문에 4를 출력 } } Colored by Color Scriptercs