Thank you Jim, Jaime, and Ilja for your help. I will look at other options. I don't think that what I am doing will tightly couple my code. Those variables are only used in cases where it really doesn't matter what they are, and changing it will require no additional code changes and little testing. Mainly they are used as codes to send to the client or to specify certain attributes.
For example, MAXSIZE sets how many commections to the server are allowed at one time. The server keeps track of how many connections and compares it to MAXSIZE and behaves accordingly. If MAXSIZE get changed, so what? The server won't really care or behave differently.
[Tony]: Static "final variables" are not constants - you haven't read this: http://jqa.tmorris.net/GetQAndA.action?qids=13&showAnswers=true
Do I really need to provide a reference to point out why "final variable" is oxymoronic? Even so, I'd use an authoritative linguist (such thing?) if I were to do just that. I would not use Head First as any kind of authority, since most of the contentious (read: not well known) issues are portrayed in a false or overly-simplistic manner in that book - which leads to these unfortunate circumstances where an innocent person has been misled. Like I said it is a oxymoron, but the meaning is still quite clear. static final int myval=5 is a constant. It completely adheres to the rigourous definition of constant. Let us say that you are correct, what possible bad thing can happen by acting like that variable is constant? Nothing.
Again, trying to prove a point by referencing yourself is very academically dishonest.
The world is flat and here is proof:
www.mysite.com/theworldreallyisflat.html.
Who cares that it is completely opposite of conventional wisdom, I know better then anyone else.
Sorry I will take the word of Ms. Sierra and Mr. Bates over you.
[ changed code tag to boldface quote so the line isn't hideously overlong - Jim ]
[ May 21, 2006: Message edited by: Jim Yingst ]