1、声明为abstract以后,这个属性或方法不能有代码实现。
2、当某个成员被声明为abstract以后,整个class都需要被声明为抽象类。
3、派生类必须实现抽象类中所声明的所有抽象方法和抽象属性。
接口相当于招聘条件,具体实现的类相当于来应聘的人,只要条件还在,系统就可以正常工作。
以接口定义,以实际类名创建对象,然后根据不同类型进行相应的处理:
- IShippingCalculator doubleEleven = new DoubleElevenShippingCalculator();
- IShippingCalculator putong = new ShippingCalculator();
- OrderProcess orderProcessor;
- if(DateTime.Now == new DateTime(2023,11,16))
- {
- orderProcessor = new OrderProcess(doubleEleven);
- }
- else
- {
- orderProcessor = new OrderProcess(putong);
- }
- orderProcessor.Process(order);