3 ms·
Is that the modern Java equivalent of the single-method interface in Go? I can see its an abstract class - what do you do if you want to implement both Reader a
by spion 4y ago
Is that the modern Java equivalent of the single-method interface in Go? I can see its an abstract class - what do you do if you want to implement both Reader and Writer?
- pjmlp 4y agoYou implement both, duh. Single method interfaces are what lambdas are for.
- spion 4y agoIts not an interface though: public abstract class Reader Did Java add multiple inheritance or am I missing something?
- Quekid5 4y agoThe interface you'd want to implement is probably https://docs.oracle.com/en/java/javase/20/docs/api/java.base/java/lang/Readable.html https://docs.oracle.com/en/java/javase/20/docs/api/java.base... (and Appendable for the equivalent to Writer, probably AutoCloseable and Flushable as well.) However, there's lots of code which just takes a Reader/Writer and then you're SOL. (In general, the I/O interface/class hierarchy in Java is a bit of a mess because a lot of it was retrofitted to maintain binary compatibility. The equivalent stuff in Guava seems a bit saner, but of course not directly usable with all the 3rd party libraries you might want -- it has shims for the most part, though.)