이 기간 동안의 프로젝트에서는 인터페이스를 특별히 이해하지 못했습니다. 인터페이스 정의가 매우 간단하다는 것만 알았습니다. (개인적으로 개발할 때는) 이 인터페이스가 불필요하다고 느꼈습니다. 이제 팀 개발을 시작하면서 인터페이스가 얼마나 중요하고 편리한지 깨달았습니다!
다음으로, 이 기간 동안의 인터페이스 사용에 대한 저의 대략적인 의견에 대해 이야기하겠습니다. 제가 말한 것이 옳았으면 좋겠습니다. 제가 틀렸다면 양해해 주시고 제안해 주시기 바랍니다!
READY GO!
인터페이스 정의에 대해서는 자세히 설명하지 않겠습니다. 즉, 이 인터페이스 클래스를 상속받은 모든 사람은 인터페이스에 정의를 구현해야 한다는 것입니다. 이러한 필요성에 대해 팀 개발에서 인터페이스에 동의하는 한 코드가 통합됩니까? ! !
인터페이스가 중요하다고 생각하는 첫 번째 포인트는 프로젝트 규정을 통일하고 팀 코드 관리를 용이하게 한다는 것입니다!
다른 예를 들어 설명하겠습니다.
회사 A는 많은 동물을 포함하는 동물 시스템을 개발하기로 결정했습니다. 회사는 각 동물의 소리 지르는 행동을 구현하기로 결정했습니다...
이런 경우 일반적으로 각 프로그래머가 이를 받아들입니다. 실현하려는 동물 유형을 알고 나면 작업을 시작할 수 있습니다! ! !
프로그래머 멤버는 돼지 클래스를 구현합니다. 그는 외치는 방법 void Shout(문자열 내용){… 옆집 왕이 그것을 구현하기 시작했습니다. 모든 짐승이 함께 포효합니다! ! ! ! &엔%엔*%엔엔%엔 상스러운 언어의 식사가 터졌습니다! 이것을 어떻게 작성하나요? 하나씩 불러볼까? ? ?
프로그래머 동물의 울음소리도 들려주세요! ! ! ! !
이제 옆집 왕씨가 동물을 모두 부르고 싶으니 하나씩 메소드를 불러야 하는데...
자, 옆집 왕씨가 회의를 열어 동물 인터페이스를 정의하고, 모든 동물 클래스는 이 인터페이스를 상속해야 합니다. 이 인터페이스는 하나만 정의합니다. void Shout(); (너무 많이 쓰지 않고 게으른)
X, Y, M 프로그래머가 이를 상속한 후 X, M은 즉시 문제가 있음을 발견했고 그리고 자신을 변화시키기 시작했습니다. 그의 손에 있는 종족
이때, 라오왕은 모든 짐승들과 함께 포효하기 시작했습니다! 하하하하하
코드는 모두가 볼 수 있도록 다음에 게시됩니다
Interface
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace InterfaceProject { /// <summary> /// 动物接口 /// </summary> interface IAnimal { /// <summary> /// 动物叫喊 /// </summary> void Shout(); } }dog
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace InterfaceProject { /// <summary> /// 狗 /// </summary> public class Dog:IAnimal { public void Shout() { Console.WriteLine("汪汪汪"); } } }
cat
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace InterfaceProject { /// <summary> /// 猫 /// </summary> public class Cat:IAnimal { public void Shout() { Console.WriteLine("喵喵喵"); } } }
pig
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace InterfaceProject { /// <summary> /// 猪 /// </summary> public class Pig:IAnimal { public void Shout() { Console.WriteLine("猪怎么叫来着??猪叫"); } } }
옆집 라오왕이 깨닫는다 모든 짐승의 단결 Ming (Lao Wang과 같은 캐릭터의 존재를 물리 치기)
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace InterfaceProject { class Program { static void Main(string[] args) { //百兽齐鸣(这里可以使用反射来初始化所有继承IAnimal的所有动物,我就不写这个了,主要看接口) List<IAnimal> animals = new List<IAnimal>(); IAnimal dog = new Dog(); animals.Add(dog); IAnimal cat = new Cat(); animals.Add(cat); IAnimal pig = new Pig(); animals.Add(pig); //所有动物都叫一遍 for (int i = 0; i < animals.Count; i++) { animals[i].Shout(); } } } }
이 인터페이스에 대한 대략적인 통찰력은 여기까지입니다! 인터페이스는 사용하기가 매우 간단하지만 여전히 이 인터페이스의 역할을 이해해야 합니다. 이 기사를 통해 저와 같은 더 많은 초보자가 인터페이스를 향한 첫 걸음을 내딛을 수 있기를 바랍니다
위 내용은 C# 인터페이스 문제에 대한 솔루션에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!