• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: Subclass final class (Boolean) ?
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Subclass final class (Boolean) ?


  • Subject: Re: Subclass final class (Boolean) ?
  • From: Ian Joyner <email@hidden>
  • Date: Tue, 29 Aug 2006 10:34:06 +1000

On 29/08/2006, at 4:04 AM, Chuck Hill wrote:

On Aug 27, 2006, at 7:28 AM, Ken Anderson wrote:

OK, I'm a little annoyed here because I find the whole concept of 'final' to be ridiculous.

I can see the use of this concept. For example, you may have a legitimate reason for making your LicenseEvaluator class final. But the Java API writers have used it with wild conceit. "Our String is so perfect, nobody will ever need to extend it!".

Well, that and the fact that String might be a perfectly good basis for another class.


That and the rampant use of private methods (as opposed to protected) mar many Java APIs.

I agree with that too. I hardly ever use private, always preferring protected. Not being able to get at things in subclasses goes against the open-closed principle, which states why you would want to subclass in the first place rather than use as a client. And that's back to Ken's original point, because final/private goes against the flexibility and openness of the OO paradigm. (In fact the whole public, package-level, protected, private scheme cannot express intricate relationships between classes where some are public, but others may be support classes in one or more other packages.)



I would like to subclass Boolean so that I can initialize it (class method) with a short string (valueOf:"t" instead of valueOf:"f") and also to return "t" and "f" for toString (or some other method like toShortString()).


Unfortunately, java.lang.Boolean is marked as final. Is there any way to get around that?

No, not if you exclude hacking Java by fiddling with the bootclasspath.


Chuck



To give a little background, I would like to have a custom WebObjects type where I can declare the factory method to create the instance, and the method to call to get back the string instance. I want to make it a single character so that I can use a string field with length=1 instead of length=5 (saving a lot of space).


Oh, and yet another reason I want categories from Objective-C in Java...


--

Practical WebObjects - for developers who want to increase their overall knowledge of WebObjects or who are trying to solve specific problems. http://www.global-village.net/products/ practical_webobjects

_______________________________________________ Do not post admin requests to the list. They will be ignored. Webobjects-dev mailing list (email@hidden) Help/Unsubscribe/Update your Subscription: This email sent to email@hidden
  • Follow-Ups:
    • RE: Subclass final class (Boolean) ?
      • From: "Marcin Lukasiak" <email@hidden>
References: 
 >Subclass final class (Boolean) ? (From: Ken Anderson <email@hidden>)
 >Re: Subclass final class (Boolean) ? (From: Chuck Hill <email@hidden>)

  • Prev by Date: Re: Why Ruby is popular?
  • Next by Date: Re: Looks like ThinkSecret got some of the scoop on WO from WWDC'06
  • Previous by thread: Re: Subclass final class (Boolean) ?
  • Next by thread: RE: Subclass final class (Boolean) ?
  • Index(es):
    • Date
    • Thread