Path: csiph.com!x330-a1.tempe.blueboxinc.net!usenet.pasdenom.info!aioe.org!.POSTED!not-for-mail From: Roedy Green Newsgroups: comp.lang.java.programmer Subject: Re: Class.forName().newInstance() vs new Date: Mon, 13 Jun 2011 06:16:01 -0700 Organization: Canadian Mind Products Lines: 31 Message-ID: References: Reply-To: Roedy Green NNTP-Posting-Host: RCd/Ul4tyxGUBII8WGwa5g.user.speranza.aioe.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Complaints-To: abuse@aioe.org X-Notice: Filtered by postfilter v. 0.8.2 X-Newsreader: Forte Agent 6.00/32.1186 Xref: x330-a1.tempe.blueboxinc.net comp.lang.java.programmer:5287 On Sat, 11 Jun 2011 22:43:59 +0530, Abu Yahya wrote, quoted or indirectly quoted someone who said : >I have a class that instantiates a private member based on a value in a >configuration file. When you use new, it must be followed by hard coded the name of the class. When you use newInstance, you can create the Class object with Class.forName so all you need is a string containing the class name. This is more general, but more convoluted than using new. When you use Class.forName, GENJAR or the like has no idea that the class need be included in the jar. All it sees is the string, not the class name. The class name does not exist until run time. This can be a good or bad thing. -- Roedy Green Canadian Mind Products http://mindprod.com One of the great annoyances in programming derives from the irregularity of English spelling especially when you have international teams. I want to find a method or variable, but I don't know precisely how its is spelled or worded. English is only approximately phonetic. Letters are randomly doubled. The dictionary often lists variant spellings. British, Canadian and American spellings differ.I would like to see an experiment where variable names were spelled in a simplified English, where there were no double letters.I also think you could add a number of rules about composing variable names so that a variable name for something would be highly predictable. You would also need automated enforcement of the rules as well as possible.