Core Java, Frameworks & Servers
Friday, 20. May 2016., 15:20
This is a continuation of the comparison between Executor and ForkJoin frameworks on a single simple example.Multiple inheritance has been kept complex and unnecessary, for quite a long time. Probably one of the main reasons is that multiple inheritance in C++ is relatively poorly designed. (Multiple inheritance in C++ was not introduced from the beginning, it was introduced later, in 1989.However, the Eiffel language has multiple inheritance from the beginning (1986), and of all OOPLs, Eiffel has the best support of multiple inheritance).Based on these bad experiences, the designers of Java (and later C#) decided not to support multiple inheritance of classes.Java 8 has moved in the direction of introducing multiple inheritance of classes (using default methods in Java interfaces). Important new features in Java 8 are lambda expressions and Streams API.The presentation has a brief introduction to default methods, lambda expressions and Streams API, and shows a new solution for parallelization, using the Streams API.