C#의 Java final 해당 키워드

Muhammad Maisam Abbas 2023년12월11일
C#의 Java final 해당 키워드

이 자습서에서는 Java의 final 키워드에 해당하는 C# 키워드에 대해 설명합니다.

Java final키워드에 해당하는 C#

불행히도 C#에는 Java의final키워드와 동일한 작업을 수행하는 키워드가 없습니다. final키워드는 상황에 따라 다른 용도로 사용됩니다. 클래스에서 함수 선언final키워드는 클래스로부터 상속 또는 가상 함수의 새로운 정의를 방지하는 데 사용됩니다. 필드 초기화에서final키워드는 특정 필드 값을 나중에 프로그램에서 수정할 수 없도록 지정하는 데 사용됩니다.

클래스 및 함수 선언의 Java final키워드

C#의 sealed키워드는 클래스 또는 함수 선언에 사용되는 경우 Java 언어의final키워드와 동일합니다. 다음 코드 예제는 Java의 클래스 선언에서final키워드를 사용하는 방법을 보여줍니다.

public final class MyFinalClass {
  ...
}

위의 코드는 Java에서MyClass클래스를 상속하지 못하게합니다. 이 목표는 C#의sealed키워드로 달성 할 수 있습니다. 다음 코드 예제는 C#의 클래스 선언에서sealed키워드를 사용하는 방법을 보여줍니다.

public sealed class MySealedClass {
  ...
}

위의 코드는 C#에서MySealedClass클래스를 상속하지 못하게합니다. final키워드는 또한 Java에서 더 이상 가상 기능의 정의가 없을 수 있음을 지정합니다. 다음 코드 예제는 Java의 함수 선언에서final키워드를 사용하는 방법을 보여줍니다.

public class MyClass {
  public final void myFinalFunction() {
    ...
  }
}

이것은 우리가 Java에서 가상 함수myFinalFunction()의 더 이상 정의를 만들지 못하게합니다. C#의sealedoverride키워드를 사용하여이 기능을 복제 할 수 있습니다. 다음 코드 예제는 C#의 함수 선언에서sealed키워드를 사용하는 방법을 보여줍니다.

public class MyChildClass : MyParentClass {
  public sealed override void mySealedFunction() {
    ...
  }
}

위의 코드는 C#에서 가상 함수mySealedFunction()을 더 이상 정의하지 못하게합니다.

필드 초기화의 Java final키워드

C#의 readonly키워드는 필드 초기화에 사용되는 경우 Java 언어의final키워드와 동일합니다. 다음 코드 예제는 Java의 필드 초기화에서final키워드를 사용하는 방법을 보여줍니다.

public final float g = 10;

이렇게하면 Java에서g값을 변경할 수 없습니다. 이 목표는 C#의readonly키워드로 달성 할 수 있습니다. 다음 코드 예제는 C#의 필드 초기화에서readonly키워드를 사용하는 방법을 보여줍니다.

public readonly float g = 10;

이렇게하면 C#에서g값을 변경할 수 없습니다.

Muhammad Maisam Abbas avatar Muhammad Maisam Abbas avatar

Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.

LinkedIn

관련 문장 - Csharp Keyword