title: Converting my C++ code to Java: Translating multiple inheritance
body: <p>First day using Java. Very basic question: I have three base classes, multiply-inherited by many classes. Each of these base classes has lots of implementation with few abstract methods:</p>
  
  <pre><code>class Consumer { /* lots of stuff */ };
  class Producer { /* lots of stuff */ };
  class Logger { /* lots of stuff */ };
  
  class A : public Consumer, Producer, Logger {}
  ...
  class Z : public Consumer, Producer, Logger {}
  </code></pre>
  
  <p>Now I know I can turn two of three base classes into interfaces and multiple-inherit the 2 interfaces and extend one class. Inadequate because of all the implementation in these base classes that doesn't make sense to duplicate into many subclasses.</p>
  
  <p>I'm reading some stuff on delegation or composition, and I don't know how to apply this here. Basically my thought processes have been patterned by my C++ experience. <strong>What is the path of least resistance to convert my C++ class structure to Java?</strong></p>
  
  <p>I can fill out the base classes more if needed, but hopefully not necessary.</p>