この投稿は2014年11月18日19:43にDelver_Siによって最後に編集されました。
第1章(C#OOP) 1..NET Framework(同等のもの。)ジャワにおいてJDK) 2.収録2セクション:フレームワークライブラリ(ツールキット)、CLR(CTS,CLS) 第2章(C#OOP) 1.C#構文論:主にジャワ違い (1) データ型 ストリングストリング:C#「S「小文字と大文字で大丈夫、たいてい小文字がいい。ジャワ大文字表記 ブールブール:ジャワ執筆活動ブール値 (2)変数と定数 暗黙の変数を作成します:ヴァー代替データ型(教科書の例を参照) 定数を定義する:変数を定義する前に加算してくださいコンストラクトつまり、変数は初期値に一度しか割り当てられず、後で修正できないことを意味します (3演算子、式(およびジャワ同感です) (4制御文 もしそうでなければ(同書)ジャワ) スイッチ:1.()弦を使って比較することもできます。ジャワそんな筈はありません 2.それぞれケースその後、書かなければならない休憩; ジャワ書く必要はありません やる間に、その間に、のために:(同じですジャワ) フォーリッチ: C# 構文: foreach(配列またはコレクションオブジェクト内のデータ型要素名){...} Java構文:for (データ型要素名:arrayまたはcollection object) {...} 2.配列 (1一次元配列でも同様ですジャワだがしかし[]変数の後に書くことはできません (2多次元配列2種、ある意味で同じものジャワ別の:int[,] = 新しいint[3,3]; 2それぞれの文章の意味は異なります 3.列挙: は複数の定数の集合型に似たカスタムデータ型です (1構文: 定義:enum enum型名{constant 1, constant 2, constant 3,...} 宣言:型名変数名を列挙する; 初期化:変数名 = 列挙型名。 定数1; (2定義位置:においてメインメソッドは外側に書かれ、またはクラス外側に書かれている 4.データ型変換:Convert.ToXXXX(あらゆる種類のデータ); -任意の種類のデータを指定された種類のデータに変換します 第3章(C#OOP) 1クラス:コンピュータは現実をシミュレートし、現実の抽象化を記述し、クラスはカスタムの複合データ型です 操作を容易にするために関連情報をまとめて記録してください (1)クラス2主なメンバー:属性、メソッド (2定義された場所:一般的に新しい場所を作成しますクラス文書は別々に書かれているか、別の場所で書かれていますクラスファイルが並置されているクラス書く (3定義構文: 一般クラス名 { //性質 publicstring id; publicstring name; //方式 public void study(){ Console.WriteLine("学ぶことが大好きです”); } } 2.オブジェクト:特定のクラスの実装で、カスタムクラスの変数として理解できる特定のものを記述します (1インスタンス化されたオブジェクト:(同じ変数の使用)3ステップ) クラス名 オブジェクト名= 新規クラス名(); または: クラス名 オブジェクト名(変数名); //オブジェクトを宣言する オブジェクト名= 新規クラス名(); //このオブジェクトを初期化してください(可変) (2使用オブジェクト:一般的にオブジェクトのメンバー(属性とメソッド)を使用します。 attribute: object nameを使いましょう。 属性名 使い方:オブジェクト名。 メソッド名(); 3.建設方法: オブジェクトをインスタンス化する際は、新機能クラス名()”,クラス名()これは物体を構成するための構造手法です。 (1) クラスを定義する際には、構造メソッドが自動的に生成されますが、クラスは隠されています。 (2) 構成メソッドは書き換えられ、例えばオブジェクトがインスタンス化される際にその構成メソッドが呼び出されます。 オブジェクトに初期値を割り当てたい場合は、構築メソッドにパラメータを追加できます 4.初期値が不確実な場合は、オーバーロードで実装できます。 (メソッドオーバーロード:同じメソッド名、異なるパラメータリスト。)1、数;2、タイプ;3、順序) 注:(1) 構成メソッド名はクラス名と同じで、戻り値がありません(voidは書き込まれません) (2) パラメータのない隠れた構成法は手動で書き込まれます。 (3) クラスを定義する際には、パラメータなしとすべての属性にパラメータを割り当てる2つの構成方法が用いられます。 5.コンストラクトメソッドのパラメータ名と属性名が同じ場合、どう区別すればいいですか? this: このタイプの物体を示します。 (現在のクラスの対象物) 属性を指定する際は、これを使いましょう 6.名前空間:フォルダに相当します クラスを別のフォルダ(名前空間)に入れた場合、以下で実行できます:”ネームスペース名.クラス名”アクセス クラスのトップに書くこともできます使用経路であり、以下のクラスは経路を持つ必要はありません 7.アクセス修正: パブリック:パブリックで、どこでも利用可能です internal:デフォルトは省略可能で、同じ名前空間内で使用できます 保護:保護されており、親クラスと子クラス間で使用できます プライベート:プライベートで、あなただけが使えます 8.値型と参照型(以前に学んだものを参照)知力arrayとarrayのargument呼び出しの違い) 値型:int、doubleおよびその他8つの基本データ型、列挙、構造体(後で学習予定) 参照型:配列、クラス 注:文字列は特殊で、参照型ですが同時に値パスでもあります 9.荷造りと荷解き ビン:値型を参照型に変換します アンボクシング:参照型を価値型に変換します 第4章 1.参考文献そして出て行けキーワード: 関数:値型の変数を参照型として渡す 書き方:物理パラメータの前に、実パラメータの前にそれぞれ加算します参考文献(出て行け) 手記:1.メソッドを定義する際、参考文献(出て行けはパラメータデータ型の前に書き込まれます 2.メソッドを呼び出す際、参考文献(出て行け後の実数は定数を書けず、変数のみを書きます 3.参考文献そして出て行け違いは以下の通りです:出て行け次のパラメータは初期化されていない変数である場合もあります。参考文献そんな筈はありません 2. 静電気修飾子:静的 利用場所:静電気アクセス修飾子(公衆など)。 使用されるオブジェクト:クラス、プロパティ、メソッド 注記:1. 静的クラスを修正する際、そのクラスのすべてのプロパティとメソッドは静電気の 2.用途静電気性質や修正方法はクラス名を通じて直接適用されます.属性(クラス名).メソッド)を呼び出すために 3.メソッドのオーバーロード:参考文献WinForm知識ポイント 第5章 1.Struct:クラスに似たデータ型(クラスの前身) 定義:クラス、プットと同じクラスキーワードがstructそれです 例:構造学生 { 公開文字列名; 公衆空洞検査() {} } クラスとの違い:1.構造体は値型、クラスは参照型(強調) 2.構造体は新機能インスタンス化では、クラスを使用しなければなりません新機能 3.構造体は継承できませんが、クラスは継承可能です 2.属性:クラス内でメンバー変数をカプセル化するために使用されます(メソッドを通じてメンバーに制限を加える) 構文:プライベート文字列名; // 公開文字列名 //最初の文字の大文字に注意してください { get{ 名前を返す; } // 属性を読む set{ name = value; } // 属性を書き込む } 自動車関連の物件:3.0版以上の機能、より簡潔な書き方 構文:公開文字列 名前 { get; セット; } 3.インデクサー:配列変数のメンバーをクラスにカプセル化し、配列内での要素の検出方法を最適化するために使われます 一般的には2種インデックス作成 構文1:添字インデクサー パブリック・スチューデント this[int index] { get{ 返学学生[index]; } セット { students[index] = value; } } 構文2:文字列インデクサ // 一般的には、読み込みプロパティのみで、書き込みプロパティはありません パブリック・スチューデント this[文字列名] { 取得 { Studentstu = ゼロ; foreach(学生s inthis.students) { if(s.Name == 名前) { stu = s; } } リターンストゥ; } } 使用方法:オブジェクト名[索引]又は オブジェクト名[“ストリング”] 第6章 1.デリゲート:デリゲートは、このデータ型で宣言された変数によるメソッドの署名を格納するために使えるデータ型です 関数:メソッド名をパラメータとして渡すことができます 使用例:1. 委任の定義 パブリックデリゲート、リターン値、デレゲート、タイプ名(パラメータタイプ1,...); 2. デリゲート変数の宣言とインスタンス化(デリゲートバインディングメソッドの場合:リターンバイントタイプとパラメータリストは一貫性が必要です) デレゲート型名 デリゲート変数名 = 新しいデレゲート型名(メソッド署名); メソッド署名は() 3. 委任の呼び出し 委譲変数名(パラメータ1,...); 特徴:デリゲートは複数のメソッドにバインド可能です”+=”,指定された方法を元に戻すことも可能です” -=” 匿名メソッド:メソッドを定義せず(メソッド名なし)、メソッドの内容を直接デリゲートにバインドします 2.イベント:カプセル化された委任変数(クラス内の属性とメンバー変数の関係に相当) 用法:前提:委任の定義 //クラス以外で書く 1.イベントを定義します(例:カプセル化された代理変数を宣言する)//イベントソースに記載 公開イベント注文の種類名 事故名称; 2.イベントを購読する(イベントメソッドをバインドする) 事故名称+= 新規注文の種類名(メソッド署名); //インシデント対応者へのアプローチ 3.イベントを発生させる(代議員を呼び出すのに似ています)//イベントソースに記載 事故名称(パラメーター1,…); 注:事故は一般的に2オブジェクト:イベントソース そして インシデント対応者 第7章 1.継承:サブクラス(派生クラス)は親クラス(基底クラス)を継承し、サブクラスは親クラスの属性とメソッドを持ちます 構文論:(クラスを定義する際) サブカテゴリ:父系階級 特異:1.単一根付け。 サブクラスは親クラスを1つしか継承できません 特異:2.感染力。 もしある相続B,B相続Cそうしたらあるまた、相続も受け継いだC 2. 保護それで修正されたメンバー変数やメソッドは、:(保護された)ものは、そのサブクラスまたはそのサブクラスのみが使用できます 3.継承におけるコンストラクトメソッド:まず親コンストラクタを呼び出し、その後子クラスのコンストラクタを呼び出す メソッド1:暗黙的呼び出し:デフォルトで(仕様なし)、サブクラスはパラメータなしで親クラスのコンストラクトメソッドを呼び出します メソッド2:明示的呼び出し:親クラスを呼び出す構成メソッドを指定します。 パブリック・ソン(文字列名、文字列の性別、文字列色) : ベース(名前、性別) { headColor = color; } 4. 封印済みクラスが継承されたくないなら、そのキーワードを追加できます 5.継承における書き換え方法 (オーバーライド(多型性) 構文:親クラスのメソッドが使用されますバーチャル(または)オーバーライド)修正を行い、サブクラスを利用できますオーバーライド書き直す 機能:参照ケースレッスン7 注意:子クラスが親クラスを継承した場合、親クラス参照に子クラスオブジェクトを置くことができます 6.重い負荷(過負荷)および書き換え(オーバーライド)違い 分かつ:1。 オーバーロードは同じ名前の複数のメソッドを持つクラスです。 書き換えは、同じ名前を持つ2つのクラス(親クラスと子クラス)から成り立つメソッドです。 2オーバーロードメソッドの名前は同じですが、パラメータリストは異なります。 書き換えメソッドの名前もパラメータも同じです。使用バーチャル親メソッドを修正すると、オーバーライドModifyサブクラスメソッド 第8章 抽象的手法:使用概要グルーミングの方法 1.抽象クラス:使用概要修飾子クラス(パブリックアブストラクトクラスクラス名) 特異:1.抽象クラスはオブジェクトをインスタンス化できず、サブクラスによってのみ継承可能です 2.クラスに抽象メソッドが存在する場合、そのクラスは抽象クラスでなければなりません。 しかし、抽象クラスを定義する際に必ずしも抽象的な手法が含まれている必要はありません。 3.抽象クラスは具体的なメソッド(非抽象メソッド)を持つことができます。 4.サブクラスが抽象クラスを継承した場合、その抽象クラスですべての抽象化メソッドを実装しなければなりません。ただし、そのサブクラスも抽象クラスである場合を除きます 5.抽象クラスは構成メソッドを持つことができますが、それ自体は呼び出せず、部分クラスに呼び出されます 2.インターフェース:キーワードで標準と仕様を定義しますインターフェース、インターフェースはデータ型です 手記:1.インターフェースはメソッド、プロパティ、インデクサ、イベントのみを宣言できます 2.インターフェースのコンテンツはすべてデフォルトで公衆ですので修飾子を追加する必要はなく、書けばエラーがコンパイルされます 3.インターフェース名は大文字で表記します」私「始まり 4.クラスがインターフェースを実装する場合、そのインターフェース内のすべてが実装されなければなりません。ただし、そのクラスが抽象クラスである場合は別です 特異:1.インターフェースは複数のものから継承可能です(クラスは親クラスを1つしか継承できませんが、複数のインターフェースを同時に実装することも可能です) 2.継承された親クラスは「:」の後の最初の位置に書かれ、その後のインターフェースは「」で区切られなければなりません。 3.クラスが同じメソッド名を持つ複数のインターフェースを実装する場合、そのインターフェースはディスプレイで実装されるべきです 4.インターフェースはバインド可能です 5. パラメータとしてのインターフェース、多型性も実現可能です 3.isそしてとして使用例 は:対象が特定のタイプかどうかを判断する,もしそれがリターンならtrue、でなければ返すfalse 例:もし(cはIPrintです) として: オブジェクトを特定の型に変換します 例:IPrint c1 = c をIPrintとして; 4.抽象クラスとインターフェースの違い(教科書を参照)P189)
|