假设我有一个抽象类,例如具有3个ABSTRACT方法OpenconnectionExecutequerycloseconnection的DatabaseConnection。
DatabaseConnection类由不同的类继承,以与mysql,oracle,sql server建立连接...继承的clasess的结构如何?
创建增加代码的可维护性和可重用性的派生类实例的最佳方法是什么?

最佳答案

如果您有一个抽象类:

public abstract class DatabaseConnection
{
   public DatabaseConnection(...) // Optional if you want a base constructor
                                     with or without required parameters.
   public abstract void OpenConnection();
   ...
}


然后,实现只需覆盖所有内容:

public class SQLServerDatabaseConnection : DatabaseConnection
{
   public SQLServerDatabaseConnection(...) //Whatever params you want
   //Or public SQLServerDatabaseConnection(...) : base (...) //if base has required params
   {
   }

   public override void OpenConnection()
   {
   }

   ...//Overrides for every other pure virtual method
}

关于c# - 最佳使用应用程序中的抽象覆盖类,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23821016/

10-09 03:33