访问不同类中的方法相同名称空间而不实例化类仅供参考

时间:2014-06-13 05:13:50

标签: c#

有没有办法访问具有相同名称空间的不同类中的方法

示例代码

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using WindowsFormsApplication1;


namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        public void Test()
        {

        }
    }
}


namespace WindowsFormsApplication1
{
    public class TestClass
    {
        public void Test2()
        {

        }
    }
}

我想在Test()方法中访问test2()方法,它们在不同的类中,但是在同一个命名空间中我想访问它而不像这样实例化TestClass类

TestClass test = new TestClass();
test.Test2();

我不想这样做是否有办法?

注意"我避免使用静态方法"谢谢你回答这个

1 个答案:

答案 0 :(得分:1)

据我所知,没有办法做到这一点。 但是你为什么要这样做?

要访问Test(),您需要实例化一个类(Form1)。您希望然后使用不同的方法但不实例化该类。那么运行它的意义是什么?它的背景是什么?

可能的解决方案:

  1. 创建一个扩展方法(因为您将扩展表单,我不推荐它)
  2. 将Test2()移动到Form1
  3. 将test()移动到TestClass中,并仅将其实例化一次。
  4. 在所有
  5. 之后使用静态类