静的を使用した C#

王林
リリース: 2024-09-03 15:30:36
オリジナル
927 人が閲覧しました

using static ディレクティブは、2016 年の C# バージョン 6 のリリースで導入されました。これにより、名前空間参照や型参照を必要とせずに静的メンバーを参照できるようになり、また、using static ディレクティブを使用してネストされたオブジェクトを参照することもできます。種類。たとえば、静的ディレクティブを使用すると、クラス自体を参照せずにコンソール クラスの静的メンバーを参照できるため、非常に単純で効率的なコードが得られます。また、静的ディレクティブを使用すると、コードが読みやすくなり、クラスの静的メンバーも参照できるようになります。 static ディレクティブを使用してソース ファイルにインポートできます。

C# で静的ディレクティブを使用する構文は次のとおりです。

using static <fully-qualified-type-name>;
ログイン後にコピー

完全修飾型名は、型自体を使用せずに、静的でネストされたメンバーを参照できる型名です。

C# での静的ディレクティブの使用方法

  • 静的ディレクティブの使用は、2015 年の C# バージョン 6 のリリースで導入されました。
  • static ディレクティブを使用すると、名前空間やクラスを参照せずに静的メンバーを参照できます。
  • 入れ子になった型は、静的ディレクティブを使用して参照することもできます。

C# での静的ディレクティブの使用法を説明するために、以下の例を考えてみましょう。

using System.IO;
//using static directive is defined for system.Console
using static System.Console;
//a class called Check is defined
class Check
{
//Main method is called
static void Main()
{
//WriteLine method is referenced without using the Console class name
WriteLine("Welcome to using static directives");
}
}
ログイン後にコピー

出力:

静的を使用した C#

上記のプログラムでは、システムに対して static ディレクティブの使用が定義されています。コンソール。次に、クラスが定義されているかどうかを確認します。次に、main メソッドが呼び出されます。次に、システムに静的ディレクティブを使用しているため、Console クラス名を使用せずに WriteLine メソッドが参照されます。コンソール。プログラムの出力は、上のスナップショットに示されているとおりです。

静的を使用した C# の例

以下に挙げる例は次のとおりです

例 #1

プログラム内で静的ディレクティブを使用する方法を示す C# プログラム

コード:

//using static directive for system.console
using static System.Console;
//using static directive for system.math
using static System.Math;
//using static directive for system.string
using static System.String;
//a namespace called Features is defined
namespace Features
{
//a class called import is defined
class Import
{
//main method is called
public static void Main(string[] args)
{
//the sqrt method is called without referencing math class because using static directive is used for system.math
double sqroot   = Sqrt(64);
//the concat method is called without referencing math class because using static directive is used for system.string
string newString = Concat("Learning"," is fun");
//the writeline method is called without referencing math class because using static directive is used for system.console
WriteLine(sqroot);
WriteLine(newString);
}
}
}
ログイン後にコピー

出力:

静的を使用した C#

上記のプログラムでは、system.console の static ディレクティブを利用しています。次に、system.math の static ディレクティブを利用しました。次に、system.string の静的ディレクティブを利用しました。次に、「機能」という名前空間が定義されます。次に、import というクラスが定義されます。次に、main メソッドが呼び出されます。次に、system.math に static ディレクティブが使用されているため、math クラスを参照せずに sqrt メソッドが呼び出されます。次に、system.string に static ディレクティブを使用しているため、数学クラスを参照せずに concat メソッドが呼び出されます。 system.console では static ディレクティブを使用しているため、数学クラスを参照せずに writeline メソッドが呼び出されます。プログラムの出力は、上のスナップショットに示されているとおりです。

例 #2

プログラム内で静的ディレクティブを使用する方法を示す C# プログラム

コード:

using System;
//using static directive for system.console
using static System.Console;
//using static directive for system.string
using static System.String;
//a class called check is defined
class check
{
//main method is called
public static void Main(string[] args)
{
//the writeline method is called without referencing math class because using static directive is used for system.console
WriteLine("Check if the given number is positive or negative or zero:");
//a variable number is defined
int number = 10;
//Comparison operator is used to check if the number is greater than zero
if (number > 0)
//the writeline method is called without referencing math class because using static directive is used for system.console
WriteLine("Positive number");
//Comparison operator is used to check if the number is equal to zero
else if (number == 0)
//the writeline method is called without referencing math class because using static directive is used for system.console
WriteLine("Zero");
else
//the writeline method is called without referencing math class because using static directive is used for system.console
WriteLine("Negative number");
}
}
ログイン後にコピー

出力:

静的を使用した C#

上記のプログラムでは、system.console の static ディレクティブを利用しています。次に、system.string の静的ディレクティブを利用しました。次に、check というクラスが定義されます。次に、main メソッドが呼び出されます。 system.console では static ディレクティブを使用しているため、数学クラスを参照せずに writeline メソッドが呼び出されます。次に、変数が定義され、その数値が割り当てられ、それが正、負、またはゼロであるかどうかをチェックする必要があります。次に、比較演算子を使用して、数値がゼロより大きいか、ゼロより小さいか、またはゼロに等しいかを確認します。プログラムの出力は、上のスナップショットに示されているとおりです。

静的を使用する C# の利点

以下に挙げるいくつかの利点があります:

  • クラスのメンバーが静的になった場合、その静的メンバーはクラスのインスタンスに依存する必要はありません。これにより、静的として宣言されていないメンバーが呼び出されるときに、クラスの新しいインスタンスが作成されることが回避されます。これもまたガベージ コレクションを必要としますが、これは回避できます。
  • 電子メールの送信、エラーのログ記録、Web 設定からの値の取得などのユーティリティ メソッドの実装は、静的ディレクティブを使用することで簡単に行うことができます。
  • 静的メソッドが共有されるため、静的ディレクティブを使用するとメモリの使用量が少なくなります。

結論

このチュートリアルでは、定義を通じて C# で静的ディレクティブを使用する概念、C# で静的ディレクティブを使用する構文、プログラミング例とその出力を通じて静的ディレクティブを使用する仕組みを理解します。

以上が静的を使用した C#の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート