>  기사  >  백엔드 개발  >  C# 정적 사용

C# 정적 사용

王林
王林원래의
2024-09-03 15:30:36867검색

using static 지시문은 2016년 C# 버전 6 릴리스와 함께 도입되었습니다. 이를 통해 네임스페이스 참조나 유형 참조 없이도 정적 멤버를 참조할 수 있으며 using static 지시문을 사용하여 중첩된 항목을 참조할 수도 있습니다. 유형. 예를 들어 정적 지시문을 사용하면 클래스 자체를 참조하지 않고 콘솔 클래스의 정적 멤버를 참조할 수 있어 매우 간단하면서도 효율적인 코드가 생성되고 정적 지시문을 사용하면 코드를 더 읽기 쉽게 만들고 클래스의 정적 멤버를 사용할 수 있습니다. 정적 지시문을 사용하여 소스 파일로 가져올 수 있습니다.

C#에서 static 지시문을 사용하는 구문은 다음과 같습니다.

using static <fully-qualified-type-name>;

여기서 정규화된 유형 이름은 유형 자체를 사용하지 않고도 참조할 수 있는 정적 및 중첩 멤버가 있는 유형 이름입니다.

 C#에서 정적 지시어 사용 작업

  • 정적 지시어 사용은 2015년 C# 버전 6 출시와 함께 도입되었습니다.
  • 정적 지시문을 사용하면 네임스페이스나 클래스를 참조하지 않고도 정적 멤버를 참조할 수 있습니다.
  • 정적 지시문을 사용하여 중첩 유형을 참조할 수도 있습니다.

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 지시어를 사용했기 때문에 Console 클래스 이름을 사용하지 않고 WriteLine 메서드가 참조됩니다. 콘솔. 프로그램의 출력은 위의 스냅샷과 같습니다.

Static을 사용한 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에 대한 정적 지시문을 사용했습니다. 그런 다음 system.math에 대한 정적 지시문을 사용했습니다. 그런 다음 system.string에 대한 정적 지시문을 사용했습니다. 그런 다음 기능이라는 네임스페이스가 정의됩니다. 그런 다음 import라는 클래스가 정의됩니다. 그런 다음 기본 메서드가 호출됩니다. 그러면 system.math에 static 지시문을 사용하기 때문에 수학 클래스를 참조하지 않고 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에 대한 정적 지시문을 사용했습니다. 그런 다음 system.string에 대한 정적 지시문을 사용했습니다. 그런 다음 check라는 클래스가 정의됩니다. 그런 다음 기본 메서드가 호출됩니다. 그런 다음 system.console에 static 지시문을 사용하므로 수학 클래스를 참조하지 않고 writeline 메서드가 호출됩니다. 그런 다음 양수, 음수 또는 0인지 확인해야 하는 번호가 할당되는 변수 번호가 정의됩니다. 그런 다음 비교 연산자를 사용하여 숫자가 0보다 크거나 0보다 작거나 0과 같은지 확인합니다. 프로그램의 출력은 위의 스냅샷과 같습니다.

정적을 사용한 C#의 장점

아래에 언급된 몇 가지 장점이 있습니다.

  • 클래스의 멤버가 정적으로 만들어지면 해당 정적 멤버는 클래스의 인스턴스에 종속될 필요가 없습니다. 이렇게 하면 정적으로 선언되지 않은 멤버가 호출될 때 클래스의 새 인스턴스가 생성되는 것을 방지할 수 있습니다. 이는 다시 피할 수 있는 가비지 수집을 요구합니다.
  • 정적 지시어를 사용하면 전자 메일 보내기, 오류 기록, 웹 구성에서 값 가져오기 등과 같은 유틸리티 방법을 더 쉽게 구현할 수 있습니다.
  • 정적 메소드를 공유하기 때문에 정적 지시어를 사용하면 메모리 사용량이 적습니다.

결론

이 튜토리얼에서는 정의를 통해 C#에서 정적 지시어를 사용하는 개념, C#에서 정적 지시어를 사용하는 구문, 프로그래밍 예제와 그 출력을 통해 정적 지시어를 사용하는 작업을 이해합니다.

위 내용은 C# 정적 사용의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
이전 기사:C# 스택다음 기사:C# 스택