C-Sharp | Java | Python | Swift | GO | WPF | Ruby | Scala | F# | JavaScript | SQL | PHP | Angular | HTML
C# SealedC# sealed keyword applies restrictions on the class and method. If you create a sealed class, it cannot be derived. If you create a sealed method, it cannot be overridden. Note: Structs are implicitly sealed therefore they can't be inherited.C# Sealed classC# sealed class cannot be derived by any class. Let's see an example of sealed class in C#. using System; sealed public class Animal{ public void eat() { Console.WriteLine("eating..."); } } public class Dog: Animal { public void bark() { Console.WriteLine("barking..."); } } public class TestSealed { public static void Main() { Dog d = new Dog(); d.eat(); d.bark(); } } Output: Compile Time Error: 'Dog': cannot derive from sealed type 'Animal' C# Sealed methodThe sealed method in C# cannot be overridden further. It must be used with override keyword in method. Let's see an example of sealed method in C#. using System; public class Animal{ public virtual void eat() { Console.WriteLine("eating..."); } public virtual void run() { Console.WriteLine("running..."); } } public class Dog: Animal { public override void eat() { Console.WriteLine("eating bread..."); } public sealed override void run() { Console.WriteLine("running very fast..."); } } public class BabyDog : Dog { public override void eat() { Console.WriteLine("eating biscuits..."); } public override void run() { Console.WriteLine("running slowly..."); } } public class TestSealed { public static void Main() { BabyDog d = new BabyDog(); d.eat(); d.run(); } } Output: Compile Time Error: 'BabyDog.run()': cannot override inherited member 'Dog.run()' because it is sealed Note: Local variables can't be sealed.using System; public class TestSealed { public static void Main() { sealed int x = 10; x++; Console.WriteLine(x); } } Output: Compile Time Error: Invalid expression term 'sealed'
Next TopicC# Abstract
|