対象に向けたC〓〓言語――属性、索引

2650 ワード

対象に向けたC〓〓言語――属性、索引
属性、索引の使用例:
  • 属性button 1.Text button 1.Text=「こんにちは」を使用します.button 1.set Textに相当する意味です.String s=button 1.Text;意味はs=button 1.get Text()に相当します.
  • は、プロパティString s="abcde"を使用する.その長さを求めます.s.Length.以上を含むことはs.GetLength()に相当する.
  • はインデックスString s="abcde"を使用する.0番目の文字を求めます.s[0]の意味はs.Get(0)に相当します.
  • 注:属性はフィールドへのアクセスに相当します.索引の内容に対する以下のアクセス.
    一、属性
    1.属性の書き方
                private string _name;
                public string Name
                {
                    get//     
                    {
                        return _name;
                    }
                    set//     
                    {
                        _name = value;//value       
                    }
                }
    
    注:C铉3以上のバージョンはPublic String Name { set; get; }/自動生成setとして書くことができます.get方法
    2.属性にアクセスするperson p = new person(); p.Name = " ";——①Console.WriteLine(p.Name);——②
    コンパイラが生成する方法は、void set _ Name(string value);/相当①string get _ Name();/相当②
    3.属性とフィールドの比較
    属性は実際に方法であるため、属性は利点を持つことができる.
  • は読み取り専用または書き込みのみ可能で、getまたはset
  • のみ可能です.
  • 有効な検査ができます.if…
  • は、計算されたデータであってもよい.
  • は、抽象的な属性
  • を定義することができる.
    二、索引
    1.インデックス(Indexer)
                 this[    ]//this     
    {
    	set
    	{
    
    	}
    	get
    	{
    
    	}
    }
    
    インデックスの例:
    using System;
    class IndexerRecord 
    {
        private string [] data = new string[6];
        private string[] keys = { "a", "b", "c", "d", "e" };
        
        //     
        public string this[int idx]   //    (  )    
        {
            set
            {
                if (idx >= 0 && idx < data.Length)
                    data[idx] = value;
            }
            get//get         
            {
                if (idx >= 0 && idx < data.Length)
                    return data[idx];
                return null;
            }
        }
    
        public string  this[string key]  //         
        {
            set
            {
                int idx = FindKey(key);
                this[idx] = value;
            }
            get//get         
            {
                return  ......;
             }
        }
    
    2.索引の使用
    オブジェクト名[パラメータ]
    コンパイラは自動的に呼び出しのための二つの方法を生成します.
  • public string Info
  • {
  • 3.属性と索引の比較
    属性
    インデックス
    名前による識別
    パラメータリストで識別する
    簡単な名前でアクセスします.
    []演算子でアクセス
    staticで修飾できます.
    staticで修飾できません.
    属性のgetアクセスはパラメータがありません.
    インデックスのgetアクセスはインデックスと同じパラメータリストを持っています.
    属性のsetアクセスは、隠しValueパラメータを含みます.
    Valueパラメータ以外にインデックスのsetアクセス器にはインデックスと同じパラメータリストがあります.
    属性と索引の部分についてもよく分かります.これからの勉強の中で、少しずつ完璧になりますように.
    @幻の泡