본문 바로가기
C#

C# - 정적(Static)함수의 이해 및 사용법

by 개발 그리고 게발 2021. 8. 26.
728x90

정적(static)함수는 일반 함수와 달리 인스턴스화 시켜서 사용하는 것이 아닌, 메모리에 올라가있는 상태의 함수를 가져가 쓰는 형태입니다. 그렇기 때문에 클래스명에 바로 함수명을 붙여서 사용하며 주로 사용하게 되는 Math나 String함수인 Math.Max() / Math.Min() / String.Format() / String.Compare() 을 쓰는것 처럼 사용할 수 있습니다.

 

정적함수는 다같이 진행하는 프로젝트의 경우 파싱Util, Http통신Util 등 모두가 주로 쓸만한 Utility함수(ParseUtil, ConnectionUtil....)를 사용하면 유용하게 사용할 수 있습니다.

 

일반함수

클래스를 인스턴스화 해야만 함수를 사용할 수 있습니다

public class Project
{
    public string GetStringValue(string txt)
    {
    	return "This is " + txt;
    }
}

public class Result
{
	Project pj = new Project();
    	string str = pj.GetStringValue("Apple");
}

 

 

정적(static) 함수

클래스를 인스턴스화 하지 않고 클래스에 바로 함수를 붙여서 사용합니다.

클래스를 인스턴스화 하더라도 인스턴스 객체에서 정적함수를 사용할 수 없습니다.

public class Project
{
    public static string GetStringValue(string txt)
    {
    	return "This is " + txt;
    }
}

public class Result
{
    string str = Project.GetStringValue("Apple");
}

 

728x90

댓글