public interface IPhoneFactory {
public void start();
}
public interface IComputerFactory {
public void start();
}
public interface IProuductFactory {
public IComputerFactory createComputer();
public IPhoneFactory createPhone();
}
public class HuaweiPhone implements IPhoneFactory{
@Override
public void start() {
System.out.println("华为手机开机");
}
}
public class HuWeiComputer implements IComputerFactory{
@Override
public void start() {
System.out.println("华为电脑开机");
}
}
public class HuaWeiFactory implements IProuductFactory{
@Override
public IComputerFactory createComputer() {
return new HuWeiComputer();
}
@Override
public IPhoneFactory createPhone() {
return new HuaweiPhone();
}
}
public class Test {
public static void main(String[] args) {
IProuductFactory huaWeiFactory=new HuaWeiFactory();
IPhoneFactory huaweiPhone=huaWeiFactory.createPhone();
huaweiPhone.start();
IComputerFactory huaweiComputer=huaWeiFactory.createComputer();
huaweiComputer.start();
}
}