2011-11-08 9 views
-1

私はC#を学んでいますが、C#クラスのフィールドの使い方は何ですか?C#のフィールドとは何ですか?なぜそれを使うのですか?

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 

namespace Class_Constructor_II 
{ 
class Fields 
{ 
    const double RandsInADollar = 7.8; 
    const double RandsInAEuro = 10.83 

    public double RandDollarConversion 
    { 
     get 
     { 
      return RandsInADollar/DollarRands; 
     } 
     set 
     { 
      DollarRands = value/RandsInADollar; 
     } 

    } 
    public double DollarRands 
    { 
     get; 
     set; 
    } 

} 
class Program 
{ 
    static void Main(string[] args) 
    { 
     Fields f = new Fields(); 
     f.DollarRands = 14500000; 
     Console.WriteLine(f.DollarRands); 

    } 
} 
} 
+1

技術的には、サンプルコードにはフィールドが含まれていません。プロパティと定数が含まれています。 – Jacob

+0

'{get;セット; } 'を1つのセミコロンで区切りますと、' DollarRands'フィールドがありますか?現在、それはプロパティです。 – Abel

+0

http://msdn.microsoft.com/en-us/library/ms173118.aspx – Tobias

答えて

4

MSDNの定義よりも良い何もない:場合、マイクロソフトで

MSDN - Fields

再び彼らのMSDNのURLを変更することを決定、ここにある:

Aフィールドはクラス内で直接宣言された任意の型の変数です または構造体。フィールドは、その包含タイプのメンバーです。

+2

@Gabe - 引用したテキストを追加したのはそのためです。 :-) –

+0

@JustinNiessnerので、フィールドは変数のようなものですか? – Aaron

+1

@Matthew - フィールドは変数です。具体的には、クラスや構造体で直接宣言された変数です。そのような定義のようなものです。 –

0

この分野に目を向ける取る基本的に、あなたのクラスで内部的に使用されるデータが含まれているためにそれらを使用する Fields

1

クラス広い可変です。メソッドのスコープの外に存在する必要があるもの。例えば、オブジェクトの存続期間などのより長い有効期間。

フィールドをパブリックにすることは、一般的には悪い考えです。あなたの例のようにプロパティを使用します。しかし、カプセル化では、世界の他のクラスは、あなたのクラスがどういう仕組みをしているのかを知る必要がないので、必要なことを行うために必要な州や値を格納するフィールドを使用できます。

関連する問題