静的メンバーとメソッド
共有機能に静的メンバーとメソッドを使う方法を理解します
「静的メンバーとメソッド」はCoddyKit上の無料C# Academyレッスンです。 これはレッスン3/6です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはC# Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 C# Academyコースには全6レッスンが含まれています。
静的メンバーと静的メソッド
静的メンバーと静的メソッド
次のレッスンへようこそ!このレッスンでは、C#の静的メンバーと静的メソッド、その目的、プログラムで効果的に使用する方法を学びます。それでは始めましょう!

静的メンバーとは
静的メンバーとは
静的メンバーは、特定のクラスのインスタンスではなく、クラス自体に属します。すべてのインスタンスで共有され、クラスのオブジェクトを作成せずにアクセスできます。
重要なポイント: すべてのインスタンスで同じ値やメソッドには、静的メンバーを使用します。
静的フィールドの定義
静的フィールドの定義
静的フィールドを定義するには、static キーワードを使用します。例:
重要なポイント: 静的フィールドは、クラスのすべてのインスタンスで共有されます。
using System;
class Counter {
public static int Count = 0; // Static field
public Counter() {
Count++; // Increment count for each object created
}
}
class Program {
static void Main() {
new Counter(); // Create first object
new Counter(); // Create second object
Console.WriteLine("Total Count: " + Counter.Count); // Outputs: Total Count: 2
}
}
静的メソッドとは
静的メソッドとは
静的メソッドは、インスタンスを必要とせず、クラス自体に対して呼び出すことができます。インスタンスデータに依存しないユーティリティ関数や処理に使用します。例:
ヒント: 特定のオブジェクトに依存しない機能には、静的メソッドを使用します。
using System;
class MathUtils {
public static int Add(int a, int b) {
return a + b;
}
}
class Program {
static void Main() {
int result = MathUtils.Add(5, 3); // Call static method
Console.WriteLine("Sum: " + result); // Outputs: Sum: 8
}
}
静的プロパティ
静的プロパティ
静的プロパティを使うと、静的フィールドへのアクセスを制御できます。例:
重要ポイント:静的プロパティを使うと、静的フィールドにアクセスして変更するための、すっきりした方法を提供できます。
using System;
class Configuration {
private static string appName = "MyApp"; // Static field
public static string AppName { // Static property
get { return appName; }
set { appName = value; }
}
}
class Program {
static void Main() {
Console.WriteLine("App Name: " + Configuration.AppName); // Get static property
Configuration.AppName = "SuperApp"; // Set static property
Console.WriteLine("Updated App Name: " + Configuration.AppName);
}
}
静的コンストラクター
静的コンストラクター
静的コンストラクターは、静的フィールドを初期化したり、クラスに対してその他の一度だけ行う処理を実行したりするために、自動的に呼び出されます。例:
ヒント:静的コンストラクターにはアクセス修飾子やパラメーターを指定できず、呼び出されるのは一度だけです。
using System;
class Logger {
public static string LogFilePath;
// Static constructor
static Logger() {
LogFilePath = "logs.txt"; // Initialize static field
Console.WriteLine("Static constructor called.");
}
}
class Program {
static void Main() {
Console.WriteLine("Log File Path: " + Logger.LogFilePath);
}
}
練習課題
練習課題
温度変換を行う静的メソッド CelsiusToFahrenheit() と FahrenheitToCelsius() を持つ TemperatureConverter クラスを作成してください。例:
using System;
class TemperatureConverter {
public static double CelsiusToFahrenheit(double celsius) {
return (celsius * 9 / 5) + 32;
}
public static double FahrenheitToCelsius(double fahrenheit) {
return (fahrenheit - 32) * 5 / 9;
}
}
class Program {
static void Main() {
Console.WriteLine("25°C to Fahrenheit: " + TemperatureConverter.CelsiusToFahrenheit(25));
Console.WriteLine("77°F to Celsius: " + TemperatureConverter.FahrenheitToCelsius(77));
}
}
静的メンバーのベストプラクティス
静的メンバーのベストプラクティス
次に、いくつかのベストプラクティスを示します。
- クラスのインスタンスに依存しない機能やデータには、静的メンバーを使用します。
- モジュール性とテスト容易性を維持するため、静的フィールドの過度な使用は避けます。
- アプリケーションのライフサイクル中に一度だけ静的データを初期化する場合は、静的コンストラクターを使用します。
ヒント:静的メンバーはシンプルに保ち、役割を絞り込みます。
よくできました!
よくできました!
おめでとうございます!C#でクラスレベルの機能を定義するために、静的メンバー、メソッド、コンストラクターを使用する方法を学びました。次のレッスンでは、固定された値の集合を管理し、関連するデータをまとめるために、列挙型と構造体について学びます。引き続きコーディングしましょう!

よくある質問
「静的メンバーとメソッド」レッスンは無料ですか?
はい。「静的メンバーとメソッド」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、C# Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 C# Academyコースには全6レッスンが含まれています。
「静的メンバーとメソッド」で何を学びますか?
共有機能に静的メンバーとメソッドを使う方法を理解します ブラウザで直接実行するハンズオンコードでC# Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
C# Academyを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのC# Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン3/6です。
「静的メンバーとメソッド」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このC# Academyレッスンでコードを書いて実行できますか?
はい。すべてのC# Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。