Allow default methods/instance variables in interfaces #3536
Labels
Needs Proposal
This issue needs a plan that clarifies the finer details of how it could be implemented.
Suggestion
An idea for TypeScript
This would be epic to have. Java itself had a problem with forcing the implementing class to implement the abstract methods, and solved it with default interface implementations. Sometimes, multiple inheritance is necessary to have. For example, I have a sea of crisscrossing is-a relationships to handle, with a ton of things like the following:
It's not pretty, but I also have to check many of these relationships at runtime as well. I can't use traditional single inheritance for this, either, because none of these are mutually exclusive. I would love to have ways to set default properties on these classes, to where I don't have to make a build script to generate all this. (I have 30+ base classes and 20+ interfaces with very intertwined relationships like the above.)
What I was thinking of was something like this:
The text was updated successfully, but these errors were encountered: