Junior
116
questionbank
В чем diferença между статическим методом и методом экземпляра?
Ответ от нейросети
sobes.tech AI
Статический метод принадлежит классу и вызывается без создания экземпляра объекта. Метод экземпляра принадлежит экземпляру класса и вызывается через созданный объект.
Основные отличия:
| Критерий | Статический метод | Метод экземпляра |
|---|---|---|
| Принадлежность | Классу | Экземпляру класса |
| Вызов | Через имя класса | Через экземпляр объекта |
| Доступ к данным | Только к статическим членам класса | К статическим членам класса и данным экземпляра |
| Ключевое слово | static |
Отсутствует (по умолчанию) |
using System;
public class MyClass
{
// Статическое поле
public static string StaticData = "This is static data";
// Поле экземпляра
public string InstanceData = "This is instance data";
// Статический метод
public static void StaticMethod()
{
Console.WriteLine("Static method called.");
Console.WriteLine(StaticData); // Доступ к статическому полю
// Console.WriteLine(InstanceData); // Ошибка: нет доступа к полю экземпляра
}
// Метод экземпляра
public void InstanceMethod()
{
Console.WriteLine("Instance method called.");
Console.WriteLine(StaticData); // Доступ к статическому полю
Console.WriteLine(InstanceData); // Доступ к полю экземпляра
}
}
public class Program
{
public static void Main(string[] args)
{
// Вызов статического метода через имя класса
MyClass.StaticMethod();
// Создание экземпляра класса
MyClass myObject = new MyClass();
// Вызов метода экземпляра через объект
myObject.InstanceMethod();
}
}