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


Groups > comp.lang.java.gui > #5105

Re: How to initialise a final static String array

From Lew <noone@lewscanon.com>
Newsgroups comp.lang.java.gui
Subject Re: How to initialise a final static String array
Date 2012-03-18 10:28 -0700
Organization albasani.net
Message-ID <jk55vc$2f4$1@news.albasani.net> (permalink)
References <874ntmxe92.fsf@Compaq.site>

Show all headers | View raw


Cecil Westerhof wrote:
> I want to use final for my static variables. I now do for example:
> 	private static final Connection conn;

DO NOT USE TAB CHARACTERS TO INDENT USENET POSTS.

Use spaces, up to four per indent level.

> 	private static final Combo      container;
>
> and
> 	static {
> 		Connection tempConn;
> 		Statement  tempStmt;
> 		try {
> 			Class.forName("org.h2.Driver");
> 			tempConn = DriverManager.getConnection(
> 					"jdbc:h2:tcp://localhost/~/databases/stock", "sa", "");
> 			tempStmt = tempConn.createStatement();
> 		} catch (Exception e) {
> 			tempConn = null;
> 			tempStmt = null;
> 		}
> 		conn = tempConn;
> 		stmt = tempStmt;

Static JDBC connections, and especially static JDBC statements, are a very bad 
idea.

Very bad.

Statements should be local in scope, not even instance level. (Usually.) Even 
connections should only be instance members if you have rather short-lived 
objects holding them.

> and
> 		if (conn == null) {
> 			throw new Exception("Could not initialise");

What kind of exception /should/ you throw? Not 'Exception'.

> 		}
>
> The only problem I have is with my array of String.
> I now have:
> 	private static final String[] titles = {
> 		"Stock",
> 		"Number",
> 		"Dare",
> 		"Container"
> 	};
>
> Because when I put it in the static block I get an error.

That doesn't make sense. It's a perfectly legitimate initialization.
> Beside this I can execute a statement like:
> 		titles[0] = "changed";
>
> Can I get the initialisation in the static part? And in such a way
> that the elements can not be changed?

First tell us what you did that didn't work.

http://sscce.org/


-- 
Lew
Honi soit qui mal y pense.
http://upload.wikimedia.org/wikipedia/commons/c/cf/Friz.jpg

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


Thread

How to initialise a final static String array Cecil Westerhof <Cecil@decebal.nl> - 2012-03-18 13:52 +0100
  Re: How to initialise a final static String array Cecil Westerhof <Cecil@decebal.nl> - 2012-03-18 13:54 +0100
  Re: How to initialise a final static String array Knute Johnson <nospam@knutejohnson.com> - 2012-03-18 09:50 -0700
  Re: How to initialise a final static String array Lew <noone@lewscanon.com> - 2012-03-18 10:28 -0700
  Re: How to initialise a final static String array Roedy Green <see_website@mindprod.com.invalid> - 2012-03-18 18:12 -0700
    Re: How to initialise a final static String array Daniel Pitts <newsgroup.nospam@virtualinfinity.net> - 2012-03-19 09:34 -0700

csiph-web