将main方法分解为方法调用

时间:2018-04-15 19:54:59

标签: c# .net

目前我的主要方法如下:

static void main(string[] args)
{
Object o = new Object("object 1");
Object o1 = new Object("object 2");
Object o2 = new Object("object 3");

List<Object> objects = new List<Objects>();

objects.add(o);
objects.add(o1);
objects.add(o2);
}

我想通过将main方法分解为方法调用来清理代码。然而,这会导致可访问性问题,即由于方法分离,对象无法找到对象。

class Program
{

static void main(string[] args)
{
   createObjects();
   objectHolder();
   addObjects();
}

public void createObjects()
{
   Object o = new Object("object 1");
   Object o1 = new Object("object 2");
   Object o2 = new Object("object 3");
}

public void ObjectHolder
{
   List<Object> objects = new List<Objects>();
}
public void addObjects()
{
   objects.add(o);
   objects.add(o1);
   objects.add(o2);
}
}

1 个答案:

答案 0 :(得分:-2)

您可以采取许多不同的方法来改进此代码,但就原始问题而言,一个好的第一步就是将业务逻辑隔离到一个单独的类中,然后再实例化:

echo "Testing..."

PING_CMD="ping -t 3 -c 1 google.com > /dev/null 2>&1"

eval $PING_CMD

if [[ $? -eq 0 ]]; then
    echo "Already connected."
else
    echo -n "Waiting for connection..."

    while true; do
        eval $PING_CMD

        if [[ $? -eq 0 ]]; then
            echo
            echo Connected.
            break
        else
            sleep 0.5
            echo -n .
        fi
    done
fi

在此代码中,ObjectManager包含您的所有业务逻辑。您实例化它,并在其构造函数中初始化List,以便您以后不会获得空引用。然后,该ObjectManager上的方法可用于在列表中添加所需的每个对象。