在c#中创建类的数据成员

本文关键字:数据成员 创建 | 更新日期: 2023-09-27 17:50:00

我是一名初级程序员,希望获得一些c#方面的帮助。

我正在写一个基于框架的程序,需要创建一个类的数据成员,然后初始化数据成员。

接下来,我需要创建一个属性来获取和设置数据成员。

另外,如果有人能提供一些关于如何对属性进行类型转换的信息,那就太好了。

我只是在这里找一些例子和一般信息。我检查了谷歌,只从MSDN得到链接,但不理解内容。

谢谢!

在c#中创建类的数据成员

下面是一个基本的解释,使用代码:

//Class Definition
public class MyClass
{
   //Data Member with inline initialization
   private int myInt = 1;
   //Standard property
   public int MyIntProp
   {
      get { return myInt; }
      set { myInt = value; }
   }
   //Auto-property, generates the same getter/setter as above with a "hidden" backing property.
   public String MyStringProp {get; set;}
   //Class constructor, great for initialization!
   public MyClass()
   {
       //Set the property to an initial value
       MyStringProp = "Hello World";
   }
}

类型转换是另一个怪物。这样做时必须非常小心,因为很少有类型可以强制转换为其他类型。数字类型通常可以相互强制转换(尽管可能会丢失数据),派生类型可以强制转换为它们的基类型,但仅此而已。

一个数字的(安全)强制类型转换的例子是:

int myInt = 2;
long myLong = (long)myInt;

这被称为"C风格"强制转换(因为在C中就是这样做的),通常就是这样强制转换数字的。当然,还有其他样式和函数可以进行强制转换。

@Iahsrah的建议也是一个很好的起点。

基本类型是这样的类:

public class MyType 
{
}

你可以在另一个类上创建this的属性,像这样:

public class AnotherType 
{
    public MyType InlinePropertyName { get; set; } 
    // Simple propertoes require no implimentation (above), or you can explicitly control it all (below)       
    private MyType _explicitPropertyName;
    public MyType ExplicitPropertyName {
       get {
            return _explicitPropertyName;
       }
       set {
           _explicitPropertyName = value;
       }
    }
}

你可以很容易地从程序的其他地方访问,像这样:

var myType = new MyType();
var anotherType = new AnotherType();
anotherType.InlinePropertyName = myType;