连接命名空间在 C# 中的工作原理
本文关键字:工作 命名空间 连接 | 更新日期: 2023-09-27 18:30:32
我是C#的新手,我正在尝试从我的main中的不同命名空间打印出一个数字。我将提供下面的代码。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("hello world" + x);
Console.ReadLine();
}
}
}
namespace Applicaton
{
class Program2
{
public int Test()
{
int x = 5;
return x;
}
}
}
我想让 Program2 类中的 x 出现在我的主课程中,即程序类中。
您可以像下面这样修改代码。由于您的Program2
是在另一个类中定义的,因此在访问它时,无论如何都必须使用命名空间名称对其进行完全限定。
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("hello world" + new Applicaton.Program2().Test());
Console.ReadLine();
}
}
}
首先将Decalare Application设置为引用的命名空间,然后将program2设置为public,将x设置为program2的公共属性。 然后在 main 中使用类 program2。
下面是源代码。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Applicaton;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
Program2 p= new Program2();
Console.WriteLine("hello world" + p.x);
Console.ReadLine();
}
}
}
namespace Applicaton
{
public class Program2
{
public int x;
public int Test()
{
x = 5;
return x;
}
}
}
只需调用该类。
Program2 p = new Program2();
Console.WriteLine(p.Test().toString());
无论程序2有什么,你都可以调用它。或分配它。
int num = p.Test();
Console.WriteLine(num);
然后打印出来。
您需要创建该类的实例并对其调用该方法。
Program2 program = new Program2();
int x = program.Test();
Console.WriteLine("hello world" + x);
请确保包含命名空间:
using Application;
编程不是这样的。除了命名空间之外,学习一些面向对象的原则。
你需要的是"new"或实例化一个可以调用Test()方法的Program2对象。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Application;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
Program2 program = new Program2();
//Below I am calling the Test() method knowing that Test() will return a value to save from having to initialize another variable.
Console.WriteLine("hello world" + program.Test());
}
}
}
namespace Applicaton
{
class Program2
{
public int Test()
{
int x = 5;
return x;
}
}
}