728x90
1. 다음 빈칸에 알맞는 단어를 작성해 보세요.
- 클래스의 이름과 동일하고 반환 타입이 없는 특별한 메서드를 □□□ (이)라고 합니다.
더보기
클래스의 이름과 반환 타입이 없는 특별한 메서드를 생성자 라고 합니다.
2. 다음 문장이 맞으면 O표, 틀리면 X표 하세요.
- 생성자를 호출 할 때는 반드시 new 키워드를 사용해야 합니다. ( )
- 매개변수가 1개인 생성자를 기본 생성자라고 부릅니다. ( )
- 생성자를 코드로 명시하지 않으면 기본 생성자는 생략되어 있습니다. ( )
더보기
보기 1) O ==> new 키워드는 생성자와 함께 객체를 생성하는 중요한 역할을 하는 연산자이다.
보기 2) X ==> 기본생성자는 매개변수도 없고 중괄호 { } 안에도 비어있다.
보기 3) O ==> 클래스를 생성하면서 개발자가 직접 생성자를 선언하지 않아도 자바 컴파일러가 기본 생성자를 자동 으로 제공한다.
3. 다음 코드를 실행했을 때 콘솔창에 출력되는 결과는 무엇입니까 ?
package section09;
public class PRACTICE_09_03 {
public static void main(String[] args) {
Computer computer1 = new Computer("삼송");
computer1.logo();
}
}
class Computer {
String brand;
Computer(String name) {
brand = name;
}
void logo() {
System.out.println("사랑해요 " + brand);
}
}
더보기
사랑해요 삼송
4. 위 3번 코드에서 Computer 클래스의 brand 필드명을 name으로 변경하면, 다음 빈칸에 들어갈 코드는 무엇입니까 ?
class Computer {
String name;
Computer(String name) {
// ???
}
}
더보기
this.name = name; // 입력 받은 이름을 내 이름에 저장한다.
5. 다음 코드는 컴파일 에러가 발생합니다. 그 이유는 무엇이며, 어떻게 해결해야 할까요 ?
package section09;
public class PRACTICE_09_05 {
public static main(String[] args) {
Book b1 = new Book("어린왕자", 300);
Book b2 = new Book();
}
}
class Book {
String title;
int pages;
Book(String title, int pages) {
this.title = title;
this.pages = pages;
}
}
더보기
기본 생성자가 없어서 'Book b2 = new Book();' 에서 컴파일 오류가 발생한다. 따라서 Book 클래스에서 매개변수가 없는 기본 생성자를 만들어 줘야 한다.
Book() {
this("책", 100);
}
위와 같이 기본 생성자를 만들어 줘야 컴파일 오류가 해결 된다.
728x90
'JAVA > JAVA 멘토시리즈' 카테고리의 다른 글
[JAVA 멘토시리즈] 응용 문제 풀이 (다형성과 타입 변환) (0) | 2023.05.29 |
---|---|
[JAVA 멘토시리즈] 응용 문제 풀이 (상속) (0) | 2023.05.25 |
[JAVA 멘토시리즈] 응용 문제 풀이 (메소드) (0) | 2023.05.24 |
[JAVA 멘토시리즈] 응용 문제 풀이 (클래스) (1) | 2023.05.22 |
[JAVA 멘토시리즈] 응용 문제 풀이 (배열) (0) | 2023.05.22 |