Sobes.tech
Junior — Middle

Bir programlama dilinde arayüzü sealed olarak tanımlamak mümkün mü?

sobes.tech yapay zeka

AI'dan gelen yanıt

Kotlin dilinde, sürüm 1.5'ten itibaren, sealed olarak arayüzler tanımlama imkanı vardır. Bu, bu arayüzü uygulayabilecek sınıfların kümesini sınırlamaya olanak tanır ve bu, tip kontrolü ve güvenliği için faydalıdır.

Örnek:

sealed interface Expr

class Const(val number: Double) : Expr
class Sum(val e1: Expr, val e2: Expr) : Expr

Bu şekilde, sealed interface uygulama hiyerarşisini sınırlar, tıpkı sealed class gibi. Java'da böyle bir imkan yoktur, çünkü sealed yalnızca Java 15 ve sonrası sürümlerde sınıflar ve arayüzler için kullanılır, ancak farklı sözdizimi ve kısıtlamalarla.