Can we interrupt creating an object in constructor

前端 未结 7 1526
佛祖请我去吃肉
佛祖请我去吃肉 2020-12-31 03:46

Could you help me please. I have one idea but don\'t know how can I implement it.

So the question is: Can we interrupt creating an object in constructor i.e.

7条回答
  •  清歌不尽
    2020-12-31 04:30

    Best way is a factory class but if your class is so small you can use this:

    class SomeClass
        {
            private string _someCriteria;
    
            private SomeClass(string someCriteria)
            {
                _someCriteria = someCriteria;
            }
    
            public static SomeClass CreateInstance(string someCriteria)
            {
                if (someCriteria.Length > 2)
                {
                    return new SomeClass(someCriteria);
                }
                return null;
            }
        }
    
        class Program
        {
            static void Main(string[] args)
            {
    
                // returns null
                SomeClass someClass = SomeClass.CreateInstance("t");
    
                // returns object
                SomeClass someClass2 = SomeClass.CreateInstance("test");
            }
        }
    

提交回复
热议问题