-3

Let's say I have a method run in my class A

class A {
  void run(){
  }
}

and I have another class B which is going to extend class A.

class B extends A {    
  void run() {
  }    
}

I want to restrict run method only upto class B. No further overriding should be allowed. is this possible ?

Jon Skeet
  • 1,421,763
  • 867
  • 9,128
  • 9,194

1 Answers1

2

You could make B's method final, so extending classes wouldn't be able to override it:

class B extends A {
    @Override
    final void run() {
    }
}
Mureinik
  • 297,002
  • 52
  • 306
  • 350