dcsimg
Login | Register   
RSS Feed
Download our iPhone app
TODAY'S HEADLINES  |   ARTICLE ARCHIVE  |   FORUMS  |   TIP BANK
Browse DevX
Sign up for e-mail newsletters from DevX

By submitting your information, you agree that devx.com may send you DevX offers via email, phone and text message, as well as email offers about other products and services that DevX believes may be of interest to you. DevX will process your information in accordance with the Quinstreet Privacy Policy.


Tip of the Day
Language: Java
Expertise: Intermediate
Mar 27, 2000

WEBINAR:

On-Demand

Application Security Testing: An Integral Part of DevOps


Getting Around Global Variables

In many programming languages such as C or Pascal, most users have come across global variables. Like this C example:
 

   int GlobVar = 0;	// Global variable
   void f(int x)		// Function to change variable.
   {
      GlobVar = x;
   }
Java does not have such variables. However, there is a simple way to get around this, wrap the code in class declarations—like so:
 
   public class GlobalVariables {
      public static int v = 0;
      public static void f(int x) {v = x;}
   }
[v] may be refered to with with: [GlobalVariables.v]

Note that the [static] keyword is used in declaring these class members so that they do not reference or operate on specific class object instances. [final] may be used in declaration to "finalize" a value, i.e., make it a constant. Related constants may be grouped like so:
 
public class body {
	public static final long text = 0xffffff;	// Fixed [final] used
	public static final long bgcolor = 0;	// Fixed [final] used
	public static long link = 0xff0000;		// Changeble: [final] not used
	public static long vlink = 00ff00;		// Changeble: [final] not used
}

public class keyboard {
	public static final String layout = "US";	// Fixed [final] used
	public static final String keys = 101;	// Fixed [final] used
}
Individual constants may be refered to with expressions like these:
 
	int k = keyboard.keys;
	long linkcolor = body.link;

Note if you're using a class simply for packaging purposes (like this), it really doesn't make sense to create a new instance of the class. So, you can declare a private constructor:
 
	private Body() {}
A constructor executes when an instance of the class is created, but not with a private constructor.
Jeremy Chen
 
Comment and Contribute

 

 

 

 

 


(Maximum characters: 1200). You have 1200 characters left.

 

 

Sitemap
×
We have made updates to our Privacy Policy to reflect the implementation of the General Data Protection Regulation.
Thanks for your registration, follow us on our social networks to keep up-to-date