티스토리 뷰

카테고리 없음

Family

장꾸꾸 2020. 10. 14. 14:37

/*  [출력 결과]
 * 
 *  이름 : 홍길동                  <--- Family의 toString()에서 작성
 *  아빠는 나가서 일을 한다    <--  Job인터페이스를 상속받아서  
 *                                           Father의  work()에서 작성 
 *  이름 : 김순희
 *  엄마는 집안일을 한다
 * 
 *  이름 : 홍돌이
 *  아들은 공부를 한다 
 */

 

Main

package family;

public class MainEx {
	public static void main(String[] args) {
		
		Father ob1=new Father("홍길동");
		Mother ob2=new Mother("김순희");
		Son ob3=new Son("홍돌이");
		
		System.out.println(ob1);   //or  ob1.toString()
		System.out.println(ob2);
		System.out.println(ob3);

	}
}
/*  [출력 결과]
 * 
 *  이름 : 홍길동                  <--- Family의 toString()에서 작성
 *  아빠는 나가서 일을 한다    <--  Job인터페이스를 상속받아서  
 *                                           Father의  work()에서 작성 
 *  이름 : 김순희
 *  엄마는 집안일을 한다
 * 
 *  이름 : 홍돌이
 *  아들은 공부를 한다 
 */

Job

package family;

interface Job {
	public String work();
}

 

Family

package family;

public class Family {
	private String name;
	public Family() {
		
	}
	public Family(String name) {
		super();
		this.name = name;
	}
	@Override
	public String toString() {
		return "이름 : "+name ;
	}
}

 

package family;

public class Father extends Family implements Job {
	public Father() {
		
	}

	public Father(String name) {
		super(name);
		// TODO Auto-generated constructor stub
	}

	@Override
	public String work() {
		// TODO Auto-generated method stub
		return "아빠는 나가서 일을 한다";
	}

	@Override
	public String toString() {
		// TODO Auto-generated method stub
		return super.toString()+" \n"+work()+"\n";
	}
	
	
}

 

package family;

public class Mother extends Family implements Job {
	public Mother() {
		
	}

	public Mother(String name) {
		super(name);
		// TODO Auto-generated constructor stub
	}

	@Override
	public String work() {
		// TODO Auto-generated method stub
		return "엄마는 집안일을 한다";
	}

	@Override
	public String toString() {
		// TODO Auto-generated method stub
		return super.toString()+" \n"+work()+"\n";
	}
}

 

package family;

public class Son extends Family implements Job {
	public Son() {
		
	}

	public Son(String name) {
		super(name);
		// TODO Auto-generated constructor stub
	}

	@Override
	public String work() {
		// TODO Auto-generated method stub
		return "아들은 공부를 한다";
	}

	@Override
	public String toString() {
		// TODO Auto-generated method stub
		return super.toString()+" \n"+work()+"\n";
	}
}

 

 

		Family[] f = new Family[]{new Father("홍길동"),
			new Mother("김순희"),
			new Son("홍돌이")};
		//포이치 방식으로 돌려도 아래와 출력결과는 같다
        // 각각 다른 자식 클래스지만 부모클래스로 배열을 만들어서 한번에 나오게 할 수 있다
		
		for(Family ob:f) {
			System.out.println(ob);
		}
		
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2025/05   »
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
글 보관함