单例模式构造函数传形参

写了一个设备驱动类,用单例来实现比较好,可是实例化的时候需要传递一个IP地址,构造函数不知道怎样传参数了。就新建了一个类,把这个类作为单例,将驱动类作为其中的字段,也实现了功能,就是不知道还有没有更好的方法。贴出来记录一下,也希望能有大神提供更好的方法。

  • 驱动类
 public class Device:IDevice
    {

        private string _deviceAddress;

        public DMMDevice(string deviceAddress)
        {
            _deviceAddress = deviceAddress;
        }
        
       //......
    }
  • 单例类
 public class GetDevice
    {
        
        private static string _deviceAddress = "192.168.X.XXX";
        private readonly IDevice _dmmDevice = new Device(_deviceAddress);
        private static readonly GetInstrument Instance=new GetInstrument();
        public static GetDevice GetInstance()
        {
            return Instance;
        }
        public  IDevice GetDmmDevice()
        {
            return _dmmDevice;
        }

    }
  • 调用
 protected IDevice DmmDecice = GetDevice.GetInstance().GetDmmDevice();

Mark 

原文地址:https://www.cnblogs.com/pangkang/p/4655978.html