728x90
Section08 메서드
1. 다음 빈칸에 알맞은 단어를 작성해 보세요.
- 코드를 따로 분리하는 것을 일종의
더보기
메서드
(이)란, 클래스 안에서 특정 기능을 수행하기 위한 코드를 하나의 블록으로 묶어 놓은 집합을 말합니다.- 코드를 따로 분리하는 것을 일종의
"모듈화"
(이)라고 부르는데, 이는 가독성과 유지 보수의 효율성을 높여줍니다.
2. 다음 코드를 실행했을 때 콘솔창에 출력되는 결과는 무엇입니까?
package section08;
public class PRACTICE_08_02 {
public static void main(String[] args) {
Person p = new Person();
for(int i = 0; i < 3; i++) {
p.printHello();
}
}
}
class Person {
void printHello() {
System.out.println("Hello");
}
}
더보기
Hello
Hello
Hello
3. 다음과 같은 결과가 나오도록 빈칸에 알맞은 코드를 작성해 보세요.
package section08;
public class PRACTICE_08_03 {
public static void main(String[] args) {
Student stu = new Student();
stu.introduce("철수");
stu.introduce("영희");
}
}
class Student {
void introduce(`???`) {
`???`
}
}
안녕하세요, 제 이름은 철수입니다.
안녕하세요, 제 이름은 영희입니다.
더보기
package section08;
public class PRACTICE_08_03 {
public static void main(String[] args) {
Student stu = new Student();
stu.introduce("철수");
stu.introduce("영희");
}
}
class Student {
void introduce(String name) {
System.out.println("안녕하세요, 제 이름은 " + name + "입니다.");
}
}
4. 다음 코드는 컴파일 에러가 발생합니다. 그 이유는 무엇이며, 어떻게 해결해야 할까요?
package section08
public class PRACTICE_08_04 {
public static void main(String[] args) {
Calc c = new Calc();
int result = c.plus(1, 2);
System.out.println("반환받은 결과는 " + result + "입니다.");
}
}
class Calc {
int plus(int num1, int num2) {
int res = num1 + num2;
return res;
}
System.out.println("계산 결과는 " + res + "입니다.");
}
}
더보기
- 모든 변수는 선언되는 중괄호{} 안에서만 사용할 수 있습니다.
- res 변수는 plus() 메서드 안에서 선언되었으며 메서드가 종료되기 전에 계산 결과를 출력해 주어야 합니다.
package section08
public class PRACTICE_08_04 {
public static void main(String[] args) {
Calc c = new Calc();
int result = c.plus(1, 2);
System.out.println("반환받은 결과는 " + result + "입니다.");
}
}
class Calc {
int plus(int num1, int num2) {
int res = num1 + num2;
System.out.println("계산 결과는 " + res + "입니다.");
return res;
}
}
}
계산 결과는 3입니다.
반환받은 결과는 3입니다.
5. 다음과 같은 결과가 나오도록 코드를 수정해 보세요.
package section08;
class Person {
private int age;
void setAge(int num) {
age = num;
}
int getAge() {
return age;
}
}
public class PRACTICE_08_05 {
public static void main(String[] args) {
Person lee = new Person();
lee.setAge(-10);
lee.setAge(30);
System.out.println("lee의 나이는 " + lee.getAge() + "세입니다.");
}
}
잘못된 수를 입력하셨습니다. 1 이상의 값으로 설정하세요.
lee의 나이는 30세입니다.
더보기
package section08;
class Person {
private int age;
void setAge(int num) {
if (num < 1) {
System.out.println("잘못된 수를 입력하셨습니다. 1 이상의 값으로 설정하세요.");
return;
}
age = num;
}
int getAge() {
return age;
}
}
public class PRACTICE_08_05 {
public static void main(String[] args) {
Person lee = new Person();
lee.setAge(-10);
lee.setAge(30);
System.out.println("lee의 나이는 " + lee.getAge() + "세입니다.");
}
}
728x90