Path: csiph.com!x330-a1.tempe.blueboxinc.net!usenet.pasdenom.info!news.albasani.net!eternal-september.org!feeder.eternal-september.org!.POSTED!not-for-mail From: Joshua Cranmer Newsgroups: comp.lang.java.programmer Subject: Re: Why only public methods on interfaces? Date: Fri, 08 Apr 2011 00:24:19 -0400 Organization: A noiseless patient Spider Lines: 16 Message-ID: References: <25875c94-9af2-4d28-976d-2050a738ae2e@n10g2000yqf.googlegroups.com> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Injection-Date: Fri, 8 Apr 2011 04:24:19 +0000 (UTC) Injection-Info: mx02.eternal-september.org; posting-host="LtjcJP1H6uHOtkcPMh0bUA"; logging-data="10382"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX197IGVJcu8gTW2tGGUUK1VcuM0SwDvfOHc=" User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.16pre) Gecko/20110305 Lightning/1.0b3pre Thunderbird/3.1.10pre In-Reply-To: Cancel-Lock: sha1:527bTJPOLTZxBALd22d+5lVpaUg= Xref: x330-a1.tempe.blueboxinc.net comp.lang.java.programmer:2976 On 04/07/2011 10:43 PM, Volker Borchert wrote: > Joshua Cranmer wrote: >> You can use abstract classes where reasonable; > > No, you can't, at least in some cases, because Java does not support > multiple inheritance... and there are cases where the memory overhead > of a Delegate is not tolerable. I said "where reasonable" did I not? I know that multiple inheritance renders flaws in using abstract classes, etc., etc., etc... but, given the little I know of this use case, abstract classes seem like a feasible way to go. -- Beware of bugs in the above code; I have only proved it correct, not tried it. -- Donald E. Knuth