在C#中连接名称空间是如何工作的?

在C#中连接名称空间是如何工作的?,c#,C#,我是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

我是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;
        }
    }
}

我想让x from Program2类出现在我的main中,它位于Program类中。

您需要创建该类的实例并调用该类上的方法

Program2 program = new Program2();
int x = program.Test();
Console.WriteLine("hello world" + x);
确保包含名称空间:

using Application;

编程不是这样的。名称空间旁白,学习一些面向对象的原则

您需要的是“新建”或实例化一个可以调用Test()方法的Program2对象


您可以像下面这样修改代码。由于您的
程序2
是在另一个类中定义的,因此在访问它时,无论如何您都必须使用名称空间名称对其进行完全限定

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("hello world" + new Applicaton.Program2().Test());
            Console.ReadLine();
        }
    }
}

首先将应用程序设为引用命名空间,然后将program2设为公共,将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());
你有什么程序可以调用它。 或者分配它

int num = p.Test();
Console.WriteLine(num);

然后打印出来

@user700390 OP显然在试图打印该值,但不确定您的意思。
int num = p.Test();
Console.WriteLine(num);