C#

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

개발 그리고 게발 2021. 8. 26. 11:15
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