Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- for문
- 파라미터
- while문
- 생성자
- do while문
- Overload
- Singleton
- illustrator
- Photoshop
- Interface
- expand
- 클래스
- Override
- private
- 변수
- 상속
- switch문
- 형변환
- symbol
- 배열
- Java
- 조건문
- 메서드
- static
- 반복문
- if문
- length
- super
- 멤버변수
- After effects
Archives
- Today
- Total
Ms'Note
Extends-2 본문
공통 기능을 구현하는 클래스
- 게시판의 일반적인 기능을 구현한다. 자료실과 질문/답변 게시판은 기본적인 게시판의 기능을
포함하고 있기 때문에, 이 클래스는 두 자식 클래스의 공통 기능을 추출한 개념이다.
public class Article {
// 글 번호
private int num;
private String title;
public int getNum() {
return num;
}
public void setNum(int num) {
this.num = num;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
}
질문/답변 게시판을 표현한 클래스
- 공통 기능으로써 작성된 Article을 상속받기 때문에, 답변에 대한 개념만 추가한다.
public class QNAArticle extends Article {
// 부모 클래스의 title을 질문으로 보고, 답변을 추가한다.
private String answer;
public String getAnswer() {
return answer;
}
public void setAnswer(String answer) {
this.answer = answer;
}
public String toString() {
return "질문/답변 [글번호=" + getNum() + ", 제목=" + getTitle() + ", 답변=" + answer + "]";
}
}
자료실을 표현한 클래스
- 공통 기능을 상속받고 있기 때문에, 첨부파일이라는 개념만 추가한다.
public class FileArticle extends Article {
// 자료의 확장 -> 파일이름
private String fileName;
public String getFileName() {
return fileName;
}
public void setFileName(String fileName) {
this.fileName = fileName;
}
public String toString() {
return "자료실 [번호=" + getNum() + ", 제목=" + getTitle() + ", 첨부파일=" + fileName + "]";
}
}
기능의 활용
public class Main {
public static void main(String[] args) {
FileArticle fileArticle = new FileArticle;
fileArticle.setNum(1);
fileArticle.setTitle("첫 번째 자료입니다.");
fileArticle.setFileName("java.ppt");
System.out.println(fileArticle.toString());
System.out.println("--------------------");
QNAArticle qna = new QNAArticle();
qna.setNum(1);
qna.setTitle("첫 번째 질문입니다.");
qna.setAnswer(첫 번째 답변입니다.");
System.out.println(qna.toString());
}
}
출력 결과
'IT > └▶Example Coding.JAVA' 카테고리의 다른 글
Overload-1 (0) | 2020.08.22 |
---|---|
Override (0) | 2020.08.22 |
Extends-1 (0) | 2020.08.16 |
Hiding-3 (0) | 2020.08.11 |
Hiding-2 (0) | 2020.08.11 |
Comments