Earlier quoted context omitted.
That's just an copy-paste of some features, not a comparison with Java which does most of that too.
most of that? name one
class MyNewClass extends OldClass {};
(of course it's not just a new name, it's also a new class, but it's also still a OldClass, and you are out of luck if OldClass is final or sealed)Java also has interfaces, of course. And optional properties (using Optional) and strict null checks, when you want that, you can use it.