橋本翼(ツバサムス)

メタバースプログラマー。
UnityとUnreal Engineを専門的に扱う。
メタバース系スタートアップ企業に所属。

詳細はこちら

【C#】独学での学習内容

C#

独学で学んだことのまとめ

用語と概要

クラス名

共通した事が書かれているクラス)(基となるクラスを参考にするクラス)
ベースクラス
クラスクラス
スーパークラスサブクラス
基底クラス派生クラス

修飾子

private修飾子そのクラス内でしか使えない
public修飾子どのクラスからでも使える
protected修飾子親子で共通して使える(他人は使用不可)
sealed修飾子継承を禁止する
internal修飾子同じアセンブリ(プロジェクト)なら使える

キーワード

virtualキーワード子クラスで書き換え可能にする場合に使用する
overrideキーワード子クラスで親クラスのメソッドを再定義する場合に使用する
baseキーワード親クラスのvirtualで宣言しているメソッドの内容を実行する場合に使用する
staticキーワードシングルトンのようにゲーム内に1つしか生成しない場合に使用する
constキーワード固定値を宣言する場合に使用する

強制

名前インターフェイス「interface」抽象クラス「abstract」
使用方法他クラスへの実装他クラスへの継承
命名規則I+大文字から始まる名前なし
メソッドのルール必ずpublic修飾子を付けろなし
「実装・継承」数複数実装可能1つのみ継承可能
記述兄用メソッドの宣言のみメソッドの宣言のみ
メソッドの使用強制(使用しないとエラーになる要望(使用しなくてもエラーにならない
使用状況個人開発共同開発共同開発

参照渡し・値渡し

参照渡し(ref)・「渡し手」の値をそのまま「貰い手」に渡す(「同期する」に近い
・「渡し手」が「貰い手」に参照渡しをした後に
 一方が値を変更したら、もう一方も変更される
値渡し・「渡し手」の値をコピーした値を「貰い手」に渡す(メモリが増える
・「渡し手」が「貰い手」に参照渡しをした後に
 一方が値を変更しても、もう一方は変更されない

クラス

クラス名内容
static(静的)クラスMonoBehaviourクラスを継承することが出来ず、
ゲームオブジェクトへのアタッチ
も出来ないため、
1つしか存在しないことが保証される。
(シングルトンのアタッチできないバージョン)
sealedクラス他クラスへの継承が出来ない(禁止する)クラス。

変数

変数名内容
static(静的)変数主にシングルトンでinstance変数を宣言する際に使用する
const変数(定数)必ず宣言するタイミングで初期化しなければならず、
宣言時以外に値を変更することは出来ない
(宣言時以外は読み取り専用となる)

メソッド

メソッド名概要
Mainメソッドエントリーポイント
・必ずstatic(静的)メソッド
引数は「なし」か「string[] args
戻り値は「void」か「int」か「Task」か「Task<int>
エントリーポイント」とは、
そのプログラムにおいて一番最初に実行される場所のこと
である。
(UnityでいうStartメソッド)

注意点

  • 子クラスでUpdateメソッドとStartメソッドをそのまま宣言すると、親クラスのUpdateメソッドとStartメソッドが無効になる
  • ConsoleクラスのReadLineメソッドの戻り値はnullの可能性もあるため、戻り値を取得する際は必ず「string?」(null許容型)にしなければいけない

お問い合わせ

    コメント

    タイトルとURLをコピーしました