$ javac src/ValidateBeforeSuper.java && java ValidateBeforeSuper     (OpenJDK Runtime Environment Temurin-25.0.4.1+1 (build 25.0.4.1+1-LTS))
valid input:
  Person constructor ran for 'Asha'
  name='Asha' salary=50000
invalid input:
  caught: salary must be >= 0, got -1  (note: no 'Person constructor ran' line above)

$ javac src/ValidateBeforeSuper.java && java ValidateBeforeSuper     (OpenJDK Runtime Environment Temurin-27+35 (build 27+35))
valid input:
  Person constructor ran for 'Asha'
  name='Asha' salary=50000
invalid input:
  caught: salary must be >= 0, got -1  (note: no 'Person constructor ran' line above)
