C# 3.0 在C中调用部分方法#
我最近在c#3.0中挖掘新的分部方法,我了解分部类的用法,它可以分为多个文件,一个包含定义和其他声明,但我想知道,我创建了一个分部类,如下所示:C# 3.0 在C中调用部分方法#,c#-3.0,partial-classes,partial-methods,C# 3.0,Partial Classes,Partial Methods,我最近在c#3.0中挖掘新的分部方法,我了解分部类的用法,它可以分为多个文件,一个包含定义和其他声明,但我想知道,我创建了一个分部类,如下所示: in class1.cs partial class A { partial void Method(); } in class2.cs partial class A { partial void Method() { Console.WriteLine("Hello World"); } } now in class3.c
in class1.cs
partial class A
{
partial void Method();
}
in class2.cs
partial class A
{
partial void Method()
{
Console.WriteLine("Hello World");
}
}
now in class3.cs
class MainClass
{
static void Main()
{
A obj = new A();
obj.Method(); //Here i cannot call the "Method" method.
}
}
那么创建分部方法有什么用,我在MSDN上读到,在运行时,编译器将类编译成一个,在这种情况下,编译器也应该得到“方法”方法的实现,那么为什么它不允许我在主方法中调用“方法”方法,如果我错了,有人能纠正我吗,告诉我为什么我不能在main中调用这个分部方法 来自
不允许使用访问修饰符或属性。部分方法是
秘密的
它是一个私有方法,因此您不能从main调用它。是的,我们不能从
main()调用它。
。问题不是分部方法问题是类中没有说明符的方法是私有的,并且只能在类内部调用私有方法
尝试在分部类中创建新的公共方法:
partial class A
{
partial void Method();
}
partial class A
{
partial void Method()
{
Console.WriteLine("Hello World");
}
public void Study()
{
Console.WriteLine("I am studying");
Method();
}
}
class MainClass
{
static void Main()
{
A obj = new A();
obj.Study();
}
}
您可以在定义方法的构造函数中调用分部方法 比如说
public partial class classA
{
partial void mymethod();
}
public partial class classA
{
partial void mymethod()
{
Console.WriteLine("Invoking partial method");
}
public ClassA()
{
mymethod();
}
}
public class MainClass
{
static void Main()
{
ClassA ca=new ClassA();
}
}
就这样..现在执行代码并查看结果
- 输出
调用分部方法是否确定?我们无法从Main()调用它