[英]How to access private member variables in C#?
我试图访问成员变量名称(将其设置为私有成员变量)以显示为输出。 请不要担心为什么我将成员变量Name设置为private。 仅用于练习目的。
基本上,我的输出是在外壳上显示一个名称。 要么
我叫苏拉
要么
我叫Xehanort
现在代码显示
我叫[空白]
我想知道两种方法。 第一个是通过用户输入,第二个是当字符名称存储在程序变量中时。 现在,我知道两种方法都可以做到,但是那是当我的成员变量是公共的,而不是私有的。 我想私下里做,但我很困惑。
到目前为止,这是我的代码。 第一个是Character类...
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace CSharp_Practice
{
class Character
{
private string Name;
private int Age;
private char Gender;
private float Height { get; set; }
private float Weight { get; set; }
private string Nationality { get; set; }
private string Appearance { get; set; }
//SET AND GET NAME
public void setName(string name)
{
this.Name = name;
}
public string getName()
{
return Name;
}
//SET AND GET AGE
public void setAge(int age)
{
this.Age = age;
}
public int getAge()
{
return Age;
}
}
}
...第二个是主程序
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace CSharp_Practice
{
class Program
{
static void Main(string[] args)
{
Character Hero = new Character();
Character Villain = new Character();
//List of Heroes
Hero.getName();
// Hero.Name = "Sora";
// Hero.Age = 19;
// Villain.Name = "Xehanort";
// Villain.Age = 79;
Console.WriteLine("My name is " + Hero.getName());
}
}
}
请让我知道我该怎么做,或者如果无法实现,请告诉我为什么。 我很感激。
如果您具有要设置的名称的string
值,则应该能够使用Hero.setName(value)
而不是Hero.Name = value
。
这适用于控制台输入和硬编码变量。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.