声明一个可重载的抽象方法?

时间:2016-03-20 15:43:12

标签: java oop interface abstract-class class-design

我正在创建一个java类库,并且我正在尝试实施工厂模式来帮助创建“预订”库。对象。我创建了一个接口,IBookingFactory,它声明了一个带有许多参数的方法createBooking。

我的问题是,我想实现此接口的类能够将不同的参数传递给该方法。

实现该接口的类是GuestBookingFactory和CustomerBookingFactory。客户预订接受机票,客户和数量,客人预订接受机票,数量和String电子邮件&地址。

有关如何设计此提示的任何提示?我知道我不能重载接口中声明的方法,所以我在徘徊,我怎么能想到这个问题?

    public interface IBookingFactory {
        public Booking createBooking(Ticket ticket, Customer customer, Integer quantity);
    }

    public class CustomerBookingFactory implements IBookingFactory {

        @Override
        public CustomerBooking createBooking(Ticket ticket, Customer customer, Integer quantity) {
            throw new UnsupportedOperationException("Not supported yet."); 
        }

    }

    public class GuestBookingFactory implements IBookingFactory {

        @Override
        public Booking createBooking(Ticket ticket, Integer quantity, String email,
        String address, String postcode) {

            throw new UnsupportedOperationException("Not supported yet.");
        }

    }

0 个答案:

没有答案