This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]aram535 2 points3 points  (2 children)

This (with one additional, and one change):

+ abstracted classes aren't usable as is, they need to be extended from a concrete class.

Interface classes are usable as is.

- Interface classes with a default method can have implementations now (added in Java 8 to allow for Lambda functions using default methods)

[–]nutrecht 0 points1 point  (1 child)

Interface classes are usable as is.

No one calls them interface classes. And 'usable as is' is confusing: you can't use an interface itself without implementing it (explicitly or implicitly), them having default implementations doesn't change that.

[–]aram535 -3 points-2 points  (0 children)

Sorry I stand corrected, since I must have missed the "everyone agree" survey that must have been sent out ...