CanPlayDD.java:
package com.zking.entity;
public class CanPlayDD implements PlayDD{
public void palyDD() {
System.out.println("会打豆豆");
}
}
JingJing.java
package com.zking.entity;
public class JingJing extends Student{
private PlayDD playDD;
public JingJing(){
playDD=new CanPlayDD();
}
@Override
public void playDD() {
playDD.palyDD();
}
}
LeiLei.java:
package com.zking.entity;
public class LeiLei extends Student{
private PlayDD playDD;
public LeiLei(){
playDD=new CanPlayDD();
}
@Override
public void playDD() {
playDD.palyDD();
}
}
MingMing.java:
package com.zking.entity;
public class MingMing extends Student{
private PlayDD playDD;
public MingMing(){
playDD=new NoCanPlayDD();
}
@Override
public void playDD() {
playDD.palyDD();
}
}
NoCanPlayDD.java:
package com.zking.entity;
public class NoCanPlayDD implements PlayDD{
public void palyDD() {
System.out.println("不会打豆豆");
}
}
Person.java:
package com.zking.entity;
public class Person {
private static Person person;
private Person(){
}
public static Person newInstance(){
if(person==null){
person=new Person();
}
return person;
}
}
PlayDD.java:
package com.zking.entity;
public interface PlayDD {
public void palyDD();
}
Student.java:
package com.zking.entity;
public abstract class Student {
public void eat() {
System.out.println("吃饭");
}
public void sleep() {
System.out.println("睡觉");
}
public abstract void playDD();
}