c# 리셋 함수 사용 간소화 실례

2459 단어 c#
내가 보기에 리셋 함수는 하나의 클래스에서 [외부에서 접근할 수 없는 방법]을 다른 클래스로 전달하여 이 [외부에서 접근할 수 없는 방법]의 순조로운 집행을 실현하는 것이다.방법 중의 매개 변수 전달은 기본 유형인 [문자열 s, 정수 i]와 같으면 간단하다. [function(s) 또는function(i)]을 직접 입력하면 된다. 그러나 방법체의 전달은 초보자에게는 두뇌가 없다. 사실은 범형 [Action<>]만 사용하면 기본 유형처럼 전달할 수 있다. 예를 들어 [function(Action callBack)]
다음은 같은 클래스에서 리셋을 수행합니다.
콘솔 응용 프로그램 만들기;
Program.class:
using System;
using System.Threading;
namespace ConsoleApp4
{
    class Program
    {
        static void Main(string[] args)
        {
            TestCallBack(CallBack);
        }

        private static void CallBack(string s)
        {
            Console.WriteLine(s);
            Console.ReadLine();
        }
        public static void TestCallBack(Action what)
        {
            Console.WriteLine(" ");
            Thread.Sleep(2000);
            what("233");
        }
    }
}

이 클래스에는 CallBack(strings) 방법이 포함되어 있으며, 출력 문자열 s의 내용과 TestCallBack(Action what) 방법이 포함되어 있으며,'시작'내용을 출력한 후 2초 지연된 후 매개 변수 what() 방법을 실행하고, 매개 변수 방법 what()에 문자열'233'을 전송합니다.
출력 내용:
 
233
-----------------------------------------------------------------------------------------------------------------
같은 클래스를 리셋하는 방법은 이해하기 쉽다고 느낄 수 있다. 원리는 모두 Action<>xxx를 이용하여 방법을 전달하는 것이다. 그러나 분리하여 서로 다른 두 클래스에 놓으면 약간 어지러울 수 있다. 다음은 프로그램 클래스에 리셋 함수를 놓고 클래스1에 리셋 함수를 호출하는 방법이다.
Program.class:
using System;
namespace ConsoleApp4
{
    class Program
    {
        static void Main(string[] args)
        {
            Class1 c = new Class1();
            c.TestCallBack(CallBack);
        }

        private static void CallBack(string s)
        {
            Console.WriteLine(s);
            Console.ReadLine();
        }
    }
}

Program.class의 main 함수는 Class1 클래스의 TestCallBack () 방법을 호출하고 Program의 CallBack () 방법을 전송합니다.
Class1.class:
using System;
using System.Threading;

namespace ConsoleApp4
{
    class Class1
    {
        public void TestCallBack(Action what)
        {
            Console.WriteLine(" ");
            Thread.Sleep(2000);
            what("233");
        }
    }
}

Class1.class의 TestCallBack() 방법은 매개 변수 방법체를 받아들였고 [매개 변수 방법체]의 매개 변수 유형은string이다.TestCallBack() 메서드는 먼저 콘솔에서 "시작"을 출력하고 2초 후에 매개 변수 메서드를 호출하여 "233"을 전송합니다.
출력 내용:
 
233

좋은 웹페이지 즐겨찾기