03_値の種類と参照の種類

1819 ワード

1.定数:
 
アクセス修饰子constデータタイプ定数名(大文字)=値
const int MAX_AGE=100
定数は、プログラムで設定したら変更できない値で使用されます.プログラムでよく参照される値です.
 
2.列挙
 
例えば:
public enum Genders
{
     Male,Female
)
使用:このエニュメレーションのクラスのインスタンス化対象(.)点  MaleまたはFemale
この列挙はStudentにあります.
Student stu  = new Student();
stu.Genders
 
例えば、列挙を定義します.
namespace Enum_Demo
{
    public enum Genders
    {
            Male,Female
    }
}
 
呼び出し:
namespace Enum_Demo
{
    class Program
    {   
        static void Main(string[] args)
        {
            Console.Write(Genders.Male);
            Console.WriteLine(" :"+(int)Genders.Male);
            Console.Write(Genders.Female);
            Console.WriteLine(" :" + (int)Genders.Female);
            Console.ReadLine();
        }
    }
}

コンソール出力解雇:
 Male:0
 Femal:1 
この列挙が作成されると、最初のメンバの値は0に指定され、二つ目は1に指定され、順次にインクリメントされます.
 
列挙の種類の変換
(1.)列挙変換文字列:toString()
(2.)列挙はintに変換する:(int)
(3.)文字列は列挙に変換されます.
       Genders gender = new Genders();
       gender = (Genders)Enum.Parse(typeof(Genders), "Male");//    
       Console.WriteLine(gender.ToString());
 
3.構造
 
構文:
アクセス修饰子struct构造名{}
構造と定義クラスは基本的に似ていますが、フィールドに値を付けることはできません.無参構造を追加することはできません.無参構造を提供していますので、継承できません.値の種類です.newでもnewでも大丈夫です.
 
4.値の種類と参照の種類
 
値タイプ(System.ValueType):基本的なデータタイプ、構造タイプ、エニュメレート・タイプを含みます.
引用タイプ(System.Object):
 
値転送:コピー自体の値を変更します.
引用の種類の伝達:自身を変える
 
5.箱詰めと箱抜き
 
値の種類を参照の種類に変換します.
参照の種類を値の種類に変換します.
 
6.インデックス