Khi dùng sealed cho phương thức, phương thức mất khả năng ghi đè (override). Phương thức sealed phải thuộc lớp dẫn xuất và phải là phương thức đã ghi đè.
Ví dụ: Không cho phép ghi đè phương thức display() vì có sealed modifier ở ClassTwo:
ClassOne: lớp cơ sở. ClassTwo, ClassThree: lớp dẫn xuất.
Ví dụ
class ClassOne {
public virtual void display() {
Console.WriteLine("baseclass");
}
}
class ClassTwo : ClassOne {
public sealed override void display() {
Console.WriteLine("ClassTwo derived Class");
}
}
class ClassThree : ClassTwo {
public override void display() {
Console.WriteLine("ClassThree: Another Derived Class");
}
}
Ở ClassThree, cố gắng ghi đè phương thức sealed sẽ báo lỗi vì không được phép khi dùng sealed method.