C# 类的成员的默认修饰符是: private
类是: internal
struct是值类型 class是引用类型
这是一个简单的测试:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace StructTypeDemo
{
public struct TheStruct
{
public int x;
}
public class TheClass
{
public int x;
}
class StructType
{
public static void StructTarker(TheStruct t) //传一个内存副本(struct是值类型)
{
t.x = 10;
}
public static void ClassTarker(TheClass t) //传一个对象引用(class是引用类型)
{
t.x = 10;
}
static void Main(string[] args)
{
// 这是测试1
//MyStructA structA = new MyStructA();
//structA.XVal = 10;
//structA.Display();
//Console.ReadKey();
//这是测试2
TheStruct aStruct = new TheStruct();
TheClass aClass = new TheClass();
aStruct.x = 1;
aClass.x = 1;
StructTarker(aStruct);
ClassTarker(aClass);
Console.WriteLine("aStruct.x={0}", aStruct.x); //显示: aStruct.x=1
Console.WriteLine("aClass.x={0}", aClass.x); //显示: aClass.x=10;
Console.ReadKey();
}
}
public struct MyStructA
{
private int _XVal;
public int XVal
{
get { return _XVal; }
set
{
if(value<100)
_XVal = value;
}
}
public void Display()
{
Console.WriteLine("XVal的值是:{0}", XVal);
}
}
}