Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.java.programmer > #17826

Re: multiple inheritance

Path csiph.com!newsfeed.hal-mli.net!feeder3.hal-mli.net!newsfeed.hal-mli.net!feeder1.hal-mli.net!npeer01.iad.highwinds-media.com!news.highwinds-media.com!feed-me.highwinds-media.com!nx02.iad01.newshosting.com!newshosting.com!news-out.readnews.com!transit3.readnews.com!news-out.news.tds.net!newsreading01.news.tds.net!53ab2750!not-for-mail
From "Leif Roar Moldskred" <leif.roar.moldskred@1:261/38.remove-nlb-this>
Subject Re: multiple inheritance
Message-ID <502943B6.56774.calajapr@time.synchro.net> (permalink)
X-Comment-To Arne Vajhøj
Newsgroups comp.lang.java.programmer
In-Reply-To <502943B5.56769.calajapr@time.synchro.net>
References <502943B5.56769.calajapr@time.synchro.net>
X-FTN-AREA COMP.LANG.JAVA.PROGRAMMER
X-FTN-MSGID 1:261/38 d451ac77
X-FTN-REPLY 1:261/38 d2b4e9fa
Content-Type text/plain; charset=IBM437
Content-Transfer-Encoding 8bit
X-Gateway time.synchro.net [Synchronet 3.16a-Win32 NewsLink 1.98]
Lines 63
Date Mon, 13 Aug 2012 18:36:21 GMT
NNTP-Posting-Host 69.21.70.65
X-Complaints-To news@tds.net
X-Trace newsreading01.news.tds.net 1344882981 69.21.70.65 (Mon, 13 Aug 2012 13:36:21 CDT)
NNTP-Posting-Date Mon, 13 Aug 2012 13:36:21 CDT
Organization tds.net
X-Received-Bytes 2678
Xref csiph.com comp.lang.java.programmer:17826

Show key headers only | View raw


  To: Arne Vajhøj
From: Leif Roar Moldskred <leifm@dimnakorr.com>

Arne Vajh-,j <arne@vajhoej.dk> wrote:
> On 8/2/2012 4:10 AM, Roedy Green wrote:
>>
>> 1. It has interfaces which gives much of the ability at lighter
>> weight..
>
> Only for a very limited type of types (those with no implementation
> at all).

At times, I've wished that Java had automatic delegation (composition) in 
addition to inheritance and interface implementation, where the compiler 
automatically adds the public methods and fields from delegated objects, except 
when there's a conflict of names. Something like this, maybe:


public class ClassAlfa {
  public void alfaMethod( ) { ... }
  public void sharedMethod( ) { ... }
  public void anotherSharedMethod( ) { ... }
}

public class ClassBeta {
  public void betaMethod( ) { ... }
  public void sharedMethod( ) { ... }
  public void anotherSharedMethod( ) { ... }
}


public class Delegator {
  private delegate ClassAlfa ALFA;
  private delegate ClassBeta BETA;

  public void sharedMethod( ) {
    ALFA.sharedMethod( );
  }

  public void anotherSharedMethod( ) {
    ALFA.sharedMethod( );
    BETA.sharedMethod( );
  }
}

public class Example {
  public static void main( String[] args ) {
    private Delegator delegator;

    delegator.alfaMethod( );
    delegator.betaMethod( );
    delegator.sharedMethod( );
    delegator.anotherSharedMethod( );
  }
}

--
Leif Roar Moldskred

--- BBBS/Li6 v4.10 Dada-1
 * Origin: Prism bbs (1:261/38)
--- Synchronet 3.16a-Win32 NewsLink 1.98
Time Warp of the Future BBS - telnet://time.synchro.net:24

Back to comp.lang.java.programmer | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

multiple inheritance "bob smith" <bob.smith@1:261/38.remove-s5y-this> - 2012-08-02 19:11 +0000
  Re: multiple inheritance "markspace" <markspace@1:261/38.remove-s5y-this> - 2012-08-02 19:11 +0000
    Re: multiple inheritance "Gene Wirchenko" <gene.wirchenko@1:261/38.remove-s5y-this> - 2012-08-02 19:12 +0000
  Re: multiple inheritance "Eric Sosman" <eric.sosman@1:261/38.remove-s5y-this> - 2012-08-02 19:11 +0000
  Re: multiple inheritance "Joshua Cranmer" <joshua.cranmer@1:261/38.remove-s5y-this> - 2012-08-02 19:12 +0000
    Re: multiple inheritance "Lew" <lew@1:261/38.remove-s5y-this> - 2012-08-02 19:12 +0000
    Re: multiple inheritance "Arne Vajhøj" <������
høj@1:261/38.remove-nlb-this> - 2012-08-13 18:36 +0000
  Re: multiple inheritance "Roedy Green" <roedy.green@1:261/38.remove-s5y-this> - 2012-08-02 19:12 +0000
    Re: multiple inheritance "Arne Vajhøj" <arne.vajhøj@1:261/38.remove-nlb-this> - 2012-08-13 18:36 +0000
      Re: multiple inheritance "Lew" <lew@1:261/38.remove-nlb-this> - 2012-08-13 18:36 +0000
        Re: multiple inheritance "Arne Vajhøj" <������
høj@1:261/38.remove-rj6-this> - 2012-08-18 18:36 +0000
      Re: multiple inheritance "Leif Roar Moldskred" <leif.roar.moldskred@1:261/38.remove-nlb-this> - 2012-08-13 18:36 +0000
        Re: multiple inheritance "markspace" <markspace@1:261/38.remove-nlb-this> - 2012-08-13 18:36 +0000
        Re: multiple inheritance "Arne Vajhøj" <������
høj@1:261/38.remove-rj6-this> - 2012-08-18 18:36 +0000
  Re: multiple inheritance "Jan Burse" <jan.burse@1:261/38.remove-s5y-this> - 2012-08-02 19:12 +0000

csiph-web