在 C# 中的抽象 class 中的具体方法中调用抽象方法
calling an abstract method in a concrete method inside an abstract class in C#
我有以下场景,其中抽象 class 具有 class 类型的抽象方法,并且抽象方法已在同一抽象 class 的具体方法中调用。
有人可以解释一下 OOPS 的概念吗? 对不起,如果我问的是愚蠢的问题。
using FactoryPattern.PizzaProduct;
namespace FactoryPattern.PizzaStore
{
public abstract class PizzaStore
{
public Pizza OrderPizza(PizzaType type)
{
var pizza = CreatePizza(type);
pizza.Prepare();
pizza.Bake();
pizza.Cut();
pizza.Box();
return pizza;
}
protected abstract Pizza CreatePizza(PizzaType type);
}
}
此模式允许子 class 仅实现相关的逻辑位,而无需了解封装在父 class 中的知识。
用你的话来说,它允许每个特定的比萨饼店定义比萨饼的一些特征,而无需知道比萨饼必须如何准备、烘烤、切割、装盒。
我有以下场景,其中抽象 class 具有 class 类型的抽象方法,并且抽象方法已在同一抽象 class 的具体方法中调用。
有人可以解释一下 OOPS 的概念吗? 对不起,如果我问的是愚蠢的问题。
using FactoryPattern.PizzaProduct;
namespace FactoryPattern.PizzaStore
{
public abstract class PizzaStore
{
public Pizza OrderPizza(PizzaType type)
{
var pizza = CreatePizza(type);
pizza.Prepare();
pizza.Bake();
pizza.Cut();
pizza.Box();
return pizza;
}
protected abstract Pizza CreatePizza(PizzaType type);
}
}
此模式允许子 class 仅实现相关的逻辑位,而无需了解封装在父 class 中的知识。
用你的话来说,它允许每个特定的比萨饼店定义比萨饼的一些特征,而无需知道比萨饼必须如何准备、烘烤、切割、装盒。