Question about var initialization... 2006-10-18 - By Mike New
Back > Hi list, my question isn't J2EE related... > > I'm wondering if the vars initialization (class and instance vars) is for > consistency (I know Java has initialization rules when var creation take > place) or just a type-style; for example, I've analyzed code from some > sites > (Oracle samples, IBM, Apache, TheServerSide.com) and they initializes the > vars in some classes and in others not...it's just a "make sure" > question... > > Example 1: > // imports ommited > class Some { > private List list = new ArrayList(); > > Some() { > } > } > > Example 2: > // imports ommited > class Some { > private List list; > > Some() { > list = new ArrayList(); > } > } > > One initializes on declaration, the other inside constructor, I don't know > the difference; I must say I prefer the first one. Thanks in advance... >
One difference is if you have multiple constructors, the first one will be run for all of them. If you include the initialization in the constructor you have a finer level of control.
The previous answer to this pointed out something I hadn't thought of. In any case, for a new ArrayList I don't mind having it created in every case, but in his example of a database connection (or anything remote, potentially expensive, or complicated) I would feel more comfortable putting it in the constructor or in an initialize method which might be in the contstructor or might be called only when needed (lazy initialization).
Mike > > -- > Vadim Vera > > Telephone: > Mobile Phone: > E-Mail: vadim.vera@(protected) > Web: > > > | BSD: A psychoactive drug, popular in the 80s, probably developed at UC > | Berkeley or thereabouts. Similar in many ways to the prescription-only > | medication called "System V", but infinitely more useful. (Or, at least, > | more fun). The full chemical name is "Berkeley Standard Distribution" > > =========================================================================== > To unsubscribe, send email to listserv@(protected) and include in the > body > of the message "signoff J2EE-INTEREST". For general help, send email to > listserv@(protected) and include in the body of the message "help". >
-- ---- ---- ------ _/ /// // -- ---- ---- ---- --
=========================================================================== To unsubscribe, send email to listserv@(protected) and include in the body of the message "signoff J2EE-INTEREST". For general help, send email to listserv@(protected) and include in the body of the message "help".
|
|