우선순위 큐는 우선순위 값을 가진 정보를 보유합니다. 대기열의 확장입니다. 우선 순위 대기열에서 항목을 제거하려고 하면 가장 높은 속성을 가진 항목이 먼저 제거됩니다. 우선 순위 대기열을 설정하는 방법을 살펴보겠습니다 - public class MyPriorityQueue <T> where T : IComparable <T> { } 이제 항목을 추가해 보겠습니다. 아래 예에서 항목은 일반 목록인 info에 저장됩니다. 예 public class MyPriorityQueue <T> where T
비공개 방법 비공개 방법을 설정하려면 비공개 액세스 지정자를 사용하세요. 개인 액세스 지정자를 사용하면 클래스가 다른 함수 및 개체에서 해당 구성원 변수 및 구성원 함수를 숨길 수 있습니다. 같은 클래스의 함수만 private 멤버에 액세스할 수 있습니다. 클래스의 인스턴스라도 private 멤버에 액세스할 수 없습니다. 최종 방법 최종 방법은 봉인된 수식어를 사용하세요. 메서드에 대해 C#에서 봉인된 수정자를 사용하면 메서드가 재정의하는 기능이 손실됩니다. 봉인된 메서드는 파생 클래스의 일부여야 하며 메서드는 재정의된 메서
개인 생성자는 아래와 같이 정적 멤버만 포함하는 클래스에서 사용됩니다. − class Demo { // private constructor private Demo() { } public static a = 10; } 싱글톤 클래스에는 일반 메서드가 있으며 인스턴스를 사용하여 호출할 수 있습니다. 클래스의 다중 인스턴스를 방지하기 위해 private 생성자를 사용합니다. 예를 들어 보겠습니다 - 예시 public class Singleton {
연산자 함수는 오버로드된 연산자이며 특수 이름을 가진 함수입니다. 이를 생성하기 위해 키워드 operator 뒤에 정의되는 연산자에 대한 기호가 옵니다. 다른 함수와 마찬가지로 오버로드된 연산자에는 반환 유형과 매개변수 목록이 있습니다. 예를 들어 - public static Box operator+ (Vehicle v1, Vehicle v2, Vehicle v3) { } 다음은 C#에서 연산자 함수를 만들고 사용하는 방법을 보여주는 완전한 예입니다. − 예 using System; namespace OperatorOvlAp
C#의 변수 변수는 우리 프로그램이 조작할 수 있는 저장 영역에 주어진 이름입니다. C#의 각 변수에는 변수 메모리의 크기와 레이아웃을 결정하는 특정 유형이 있으며 해당 메모리에 저장할 수 있는 값의 범위와 변수에 적용할 수 있는 작업 집합을 결정합니다. C#의 유형 C#의 변수는 값, 참조 및 포인터 유형으로 분류됩니다. 값 유형 값 유형 변수에 값을 직접 할당할 수 있습니다. system.ValueType 클래스에서 파생됩니다. 참조 유형 참조 유형은 변수에 저장된 실제 데이터를 포함하지 않지만 변수에 대한 참조를 포함합
다음은 팁입니다 - 선호 목록 필요할 때마다 목록을 사용하십시오. 동일한 작업에 대해 ArrayList로 작업하면 코드 작업이 느려질 수 있습니다. 동일한 목록에 여러 유형의 개체를 저장하는 경우 특히 그렇습니다. 곱하기 시프트 연산 사용 나누기 연산자를 사용하면 코드가 느려지므로 나누기 연산자보다 곱셈 시프트 연산을 사용하는 것이 좋습니다. 더 적은 코드는 더 적은 메모리를 차지합니다. 연산자를 사용하여 작업을 완료하여 코드를 간결하게 만들고 한 줄에서 작동하도록 하십시오. &&와 같은 연산자를 사용하면 모든 조건을 한 줄
개인 액세스 지정자를 사용하면 클래스가 다른 함수 및 개체에서 해당 구성원 변수 및 구성원 함수를 숨길 수 있습니다. 같은 클래스의 함수만 private 멤버에 액세스할 수 있습니다. 클래스의 인스턴스라도 private 멤버에 액세스할 수 없습니다. 개인 변수 생성 - private double length; 예를 들어 보겠습니다. 여기서 private로 설정된 length 변수에 접근하려고 하면 다음과 같은 오류가 발생합니다. BoxApplication.Box.length' is inaccessible due to it
속성이 null을 갖는 것이 가능하고 유효한 경우 속성은 선택 사항입니다. CLR 유형이 null을 가질 수 없는 속성은 선택적으로 구성할 수 없습니다. 선택적 속성 사용의 예 - 예 [AttributeUsage(AttributeTargets.Property, Inherited = false, AllowMultiple = false)] internal sealed class OptionalAttribute : Attribute { } public class Employee { public string Em
오버로딩은 C#에서 두 가지 유형이 있습니다. 함수 오버로딩 동일한 범위에서 동일한 함수 이름에 대해 여러 정의를 가질 수 있습니다. 함수의 정의는 인수 목록의 인수 유형 및/또는 개수에 따라 서로 달라야 합니다. 예를 들어 보겠습니다 - public static int mulDisplay(int one, int two) { } public static int mulDisplay(int one, int two, int three) { } public static int mulDisplay(int one, int two, int
중첩 클래스는 다른 엔클로징 클래스에서 선언된 클래스입니다. 그것은 바깥쪽 클래스의 멤버이고 바깥쪽 클래스의 멤버는 중첩 클래스의 멤버에 액세스할 수 없습니다. C#에서 중첩 클래스의 예제 코드 스니펫을 살펴보겠습니다. 예 class One { public int val1; public class Two { public int val1; } } class Demo { static void Main
C#에서 돌연변이 테스트를 위한 최고의 도구 중 하나는 VisualMutator입니다. 이것은 .NET 프로그래밍 환경과 통합됩니다. 다음은 돌연변이 테스트 도구인 VisualMutant의 기능입니다 - 테스트 모음의 품질을 측정합니다. 내장 및 사용자 정의 돌연변이 연산자를 사용하여 1차 돌연변이를 생성합니다. C#에서 수정된 코드 조각 보기 생성된 돌연변이에 대해 NUnit 및 XUnit 테스트를 실행합니다. 합격 및 불합격 테스트에 대한 정보 제공 결과를 XML로 작성할 수도 있습니다. 돌연변이 테스트 프로세스 시작 직후
클래스 명명 규칙 클래스 정의는 class 키워드 뒤에 클래스 이름이 오는 것으로 시작합니다. 한 쌍의 중괄호로 묶인 클래스 본문. 다음은 클래스 이름에 대한 규칙입니다. 파스칼 케이스 클래스 이름에 대한 코딩 규칙은 클래스 이름의 이름입니다. 예를 들어 PascalCasing이어야 합니다. public class EmployeeDetails {} 위의 클래스 이름 EmployeeDetails는 PascalCasing에 있습니다. 명사 또는 명사구 클래스 이름을 명사 또는 명사구로 추가하는 것을 선호 - public clas
NullReferenceException은 NullPointerException의 C# 버전입니다. C#에서 처리하고 잡으려면 try-catch를 사용하세요. 아래 예는 변수가 null로 설정되어 있고 그것을 인쇄하려고 할 때 catch에서 catch되는 예외를 throw하는 것을 보여줍니다. - Try { a = null; Console.WriteLine(a); }catch (NullPointerException ex) { Console.WriteLine(&q
C#의 숫자의 경우 int 유형을 사용합니다. 양수 또는 음수 정수인 정수를 나타냅니다. 수학 연산자 + −를 사용하여 C#에서 두 개의 정수를 추가하는 방법을 살펴보겠습니다. using System; using System.Linq; class Program { static void Main() { int x = 20; int y = 30; int sum = 0; &
런타임 다형성에는 동적 바인딩 또는 후기 바인딩이라고도 하는 메서드 재정의가 있습니다. 추상 클래스와 가상 함수로 구현됩니다. 추상 클래스에는 파생 클래스에 의해 구현되는 추상 메서드가 포함되어 있습니다. 런타임 다형성을 구현하고 Overriding −과 함께 작동하는 추상 클래스의 예를 살펴보겠습니다. 예시 using System; namespace PolymorphismApplication { abstract class Shape { public abstract i
Private 메서드는 클래스 내에서만 사용할 수 있습니다. 비공개 방법을 설정하려면 비공개 액세스 지정자를 사용하세요. 개인 액세스 지정자를 사용하면 클래스가 다른 함수 및 개체에서 해당 구성원 변수 및 구성원 함수를 숨길 수 있습니다. 같은 클래스의 함수만 private 멤버에 액세스할 수 있습니다. 클래스의 인스턴스라도 private 멤버에 액세스할 수 없습니다. 다음은 예입니다 - 예 using System; class Demo { private int displayOne() { &n
문자열을 반전시키려면 Array.Reverse() 메소드를 사용하십시오. 되돌리고 싶은 문자열을 설정하세요 - string str = "Amit"; 위의 방법에서 문자열을 문자 배열로 변환했습니다 - char[] ch = str.ToCharArray(); 그런 다음 Reverse() 메서드가 사용됩니다. Array.Reverse(ch); 예시 using System; namespace Demo { class Program { static void M
두 개의 숫자를 바꾸려면 세 번째 변수를 사용하고 임시 변수를 사용하지 않고 산술 연산자를 수행하십시오. 스와핑을 위한 두 개의 변수 설정 - val1 = 5; val2 = 10; 이제 스왑을 위해 다음 작업을 수행하십시오 - val1 = val1 + val2; val2 = val1 - val2; val1 = val1 - val2; 예시 using System; namespace Demo { class Program { static void Main(string[] a
.NET Framework에는 계층화되고 확장 가능하며 관리되는 네트워킹 서비스 구현이 있습니다. 애플리케이션에 쉽게 통합할 수 있습니다. System.Net을 사용하십시오. 네임스페이스. Uri 클래스에 액세스하는 방법을 살펴보겠습니다. C#에서는 URI(Uniform Resource Identifier)의 개체 표현을 제공합니다. - Uri uri = new Uri("https://www.example.com/"); WebRequest w = WebRequest.Create(uri); 이제 System.Net
C#에서 문자열을 자르려면 정규식을 사용하세요. 먼저 정규식에 대한 패턴을 설정하십시오 - string pattern = "\\s+"; 다음이 선행 및 후행 공백이 있는 문자열이라고 가정해 보겠습니다. - string input = " Welcome User "; 이제 Regex를 사용하여 패턴을 설정하고 C#의 새 문자열로 결과를 가져옵니다. Regex rgx = new Regex(pattern); string result = rgx.Replace(input, replacement); 다