In one of the mock exams it sayd the finalize method signature is right.I thought it is protected.Also, if its wrong does a produce a runtime error or compile time.
Remember, overridding methods can always be less restrictive than their parent methods. The one exception are private methods, which of course can't be overridden because they can't be seen by the subclass.