ホームページ >バックエンド開発 >C#.Net チュートリアル >C#学習日記14---参照型オブジェクトクラス
まず、オブジェクト クラスとは何かを理解しましょう。
オブジェクト クラス: オブジェクト クラスは、すべての型の基本クラスから派生します。C# のすべてのクラスは、Sytem の継承から直接または間接的に派生します。オブジェクト クラス (少し混乱するかもしれませんが、問題はありません。たとえば、オブジェクト クラスが木の幹である場合、以前に学習したすべてのクラスは枝または葉です、理解されています)。したがって、任意のタイプの値を Object タイプの変数に割り当てることができます。
オブジェクト変数を定義します:
オブジェクト型の変数を宣言するには、object キーワードを使用します。このキーワードは、.Net フレームワーク構造によって提供される事前定義された名前空間 System で定義され、クラス System のエイリアスです。 。物体 。定義形式は次のとおりです: オブジェクト変数名;
例:
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Test { class Program { static void Main(string[] args) { object Int,Str,Doub,Ch; //定义4个object变量 Int = 1; //整形赋值成功 Str = "HC666"; //string类型赋值成功 Doub = 12.32; //double 类型赋值成功 Ch = '男'; //char 类型赋值成功 Console.WriteLine("Int = {0}\tStr = {1}\tDoub = {2}\tch = {3}",Int,Str,Doub,Ch); } } }
出力結果: (完全に一致しています^_^)
探索の例:
上記の Object の定義は、オブジェクトがすべての型に対応していることを強調しています。基底クラスはStructクラスとclassクラスを定義すればオブジェクト化もできるのでしょうか? ? 上記のコードにいくつかの要素を追加しました。
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Test { class Program { public struct Student { public string name; public char sex; public uint age; } static void Main(string[] args) { Student stu = new Student{ name = "HC666",sex = '男',age = 19 }; //初始化 stu object m = stu; //将stu转换为object类型的对象m Student x = (Student)m; //将object类型的对象m 转换为Student x 要用强制转换 Console.WriteLine("name:{0}\tsex:{1}\tage:{2}",x.name,x.sex,x.age); } } }
<span style="font-size:18px;">结果是这样的:</span>
上記の例は、Struct 型と Class 型をオブジェクト型で相互に変換できることを示しています。変換プロセスは次のとおりです。
Struct -- -->object ---->struct; (Struct---->Object のみが値を出力できません)、stu の値は変換プロセス中に変更されません
以上、C#学習日記14- --参照型オブジェクト クラスのコンテンツ。その他の関連コンテンツについては、PHP 中国語 Web サイト (www.php.cn) に注目してください。