Java 인터페이스 관련 질문 드립니다.
자바 학원 수강 중에 콘솔 게시판을 만드는 연습중입니다.
게시판 만드는 연습을 할때 게시판 정보를 Scanner로 직접 입력받아 저장하여 등록 및 수정,삭제하는 기능을 구현해봤는데요~
이번에 강사님께서 인터페이스를 만들어 주어서 상속 받아 메소드를 구현하려고 합니다.
insert 와 update에 있는 매개변수 Board board 게시판 정보를 의미한다고 생각됩니다만
상속받은 클래스에서 insert메소드와 update메소드 구현은 어떻게 해야하나요? Board board는 따로 제가 생성자를 통해 따로 구현을 해야하나요?
이해가 된 줄 알았는데 어렵네요 ㅠㅠ
답변 부탁드립니다.
public interface BoardService {
public void insert(Board board);
/* 기능 : 게시글 번호로 게시글 정보를 삭제 후 삭제 여부를 알려주는 메소드
* 매개변수 : 게시글 번호 => int num
* 리턴타입 : boolean
* 메소드명 : delete
*/
public boolean delete(int num);
/* 기능 : 수정할 게시글 정보가 주어지면 제목,내용을 수정하는 메소드
* 매개변수 : 게시글 번호와 수정할 게시글 정보
* 리턴타입 : void
* 메소드명 : update
*/
public void update(Board board);
/* 기능 : 게시글 번호 주어지면 게시글을 전달(제목, 내용, 작성자, 작성일)을 알려주는 메소드
* 매개변수 : 게시글번호 -> int num
* 리턴타입 : Board
* 메소드명 : getBorard
*/
public Board getBorard(int num);
/* 기능 : 게시글 리스트/ 게시글 정보(제목,내용,작성자,작성일)등을 메소드
* 매개변수 : 없음
* 리턴타입 : Board[]
* 메소드명 : getBoardList
*/
public Board[] getBoardList();
/* 기능 : 검색어가 들어간 게시글 리스트를 가져오는 메소드
* 매개변수 : 검색어 => String search 를 통해 게시글 리스트
* 리턴타입 : Board[]
* 메소드명 : getBoardList
*/
public Board[] getBoardList(String search);
}
class Board{
//게시글 번호,제목, 내용, 작성자, 작성일
int num;
String title;
String contents;
String writter;
String date;
안녕하세요.
Interface는 상속받은 객체가 구현을 강제하는 의미가 있습니다. Interface 없이 구현한 로직을 아래 샘플코드의 주석처럼 넣으시면 됩니다.
update는 new Board()로 생성 후 수정 할 항목을 setter, getter로 설정 후 update 메소드를 호출해야 합니다.
public class BoardServiceImpl implements BoardService { @Override public void insert(Board board) { // insert 로직 } @Override public boolean delete(int num) { // delete 로직 // return은 delete 시 건수 return false; } @Override public void update(Board board) { // update 로직 } @Override public Board getBorard(int num) { // 일련번호로 Board 테이블 1건 조회된 Board 객체 return return null; } @Override public Board[] getBoardList() { // Board 테이블 목록을 return return null; } @Override public Board[] getBoardList(String search) { // 검색어로 Board 테이블 조회 후 Board 테이블 목록을 return return null; } }3년차 웹개발자입니다.
언어 공부가 프로그램에 절반이상을 차지해서 처음 배우실때 확실하게 배우는것을 추천드립니다.
하다가 다시 공부하면 헷갈리기만해요ㅠㅠ
추천언어는 없어요...
일단 자신한테 맞는것이 먼저 파악해야되요
크게보면
프론트엔드 : html ,css , jquery
백엔드 : java , c , c++ , c# , 루비 , 파이썬 등등등
둘중에서 하나 맞는것이 있다면 그쪽을 전문적으로 하시면 될거에요
아! 물론 풀스택개발자가 되시려면 두개다 마스터하셔야됩니다.
제가 봤을때 전망은 둘다 너무 좋아요...
현재 둘다 모셔갑니다.(실력만 된다면)
정말이에요...
도움이 되셧다면 채택 부탁드려요!