C#如何使一个对象在另一个类中可见

希望非常简单,但我无法解决这个问题..


如何使我使用 Age 类创建的对象 Andrew 在 Program 类之外可见?


我得到的错误是;'Andrew.PersonAge 在当前上下文中不存在'


using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;


namespace Testing2

{

public class Age

{

    private string personage;


    public string PersonAge

    {

        get { return personage; }

        set { personage = value; }

    }


}


class Program

{

    static void Main(string[] args)

    {

        Age Andrew = new Age();

        Andrew.PersonAge = "30"; 

    }

}



class TestOutput

{

    Console.WriteLine(Andrew.PersonAge);

    Console.ReadLine();    

}

}


幕布斯6054654
浏览 205回答 3
3回答

慕雪6442864

简短的回答:你不能让一个对象在另一个类中可见。但是你可以让Andrewobject 作为参数传入类或Output方法。这是一个传递Andrew对象被构造参数的示例,然后你可以调用这个类Output方法来显示Andrew.PersonAge。public class TestOutput{    private Age andrew;    public TestOutput(Age _andrew)    {        andrew = _andrew;    }    public void Output()    {        Console.WriteLine(andrew.PersonAge);        Console.ReadLine();    }}Age Andrew = new Age();Andrew.PersonAge = "30";TestOutput output = new TestOutput(Andrew);output.Output();

人到中年有点甜

你最好的选择可能是传递Andrew给任何需要它的人。或者,您可以创建一个公开它的属性。你的TestOutput类甚至不会编译,所以让我们添加一个接受Age对象的方法:class TestOutput{    public static void Output(Age age)    {        Console.WriteLine(age.PersonAge);        Console.ReadLine();    }}然后你只需要从Main()以下位置调用它:static void Main(string[] args){    Age Andrew = new Age();    Andrew.PersonAge = "30";    TestOutput.Output(Andrew);}
打开App,查看更多内容
随时随地看视频慕课网APP