朋友你好我在一次静态访谈中遇到了这个问题(Myclass)。我有两个clases,一个是M1
和M2
。
如何在m1中调用m2,以m2调用m1?以及如何创建静态实例?
static void Main(string[] args)
{
//in this Portion How can I call all member if MyClass
}
public static class Myclass
{
public static class M1
{
//Here How can I call m2
}
public class m2
{
//Here How can I call m1
}
}
答案 0 :(得分:1)
对于静态类M1,您需要使用类名调用。 对于非静态类M2,您需要创建实例。 你可以调用方法/属性,而不是类。
public static class Myclass
{
public static void Main(String[] args)
{
// call something on m2
var m2 = new Myclass.m2();
m2.A2(); // call m2.A2 method
// call something on m1
Myclass.m1.A1();
}
public static class M1
{
//Here How can I call m2
public static void A1()
{
var m2 = new Myclass.m2(); // create m2instance
m2.A2(); // call m2
}
}
public class m2
{
//Here How can I call m1
public void A2()
{
Myclass.M1.A1(); // called M1.A1
}
}
}
答案 1 :(得分:1)
你不能调用一个类,因为它是静态的,你不能生成那种类型的新类,但你可以像这样轻松地调用它的方法和函数:
public static class Myclass
{
public static class M1
{
public static class Method2(){
}
new m2().AMethod();
}
public class m2
{
//Here How can I call m1
public static void AMethod(){
//method
}
}
}
主要是:
static void Main(string[] args)
{
new MyClass.m2().AMethod();
MyClass.M1.Method2();
}