|
|
|
|
![]() ![]() |
Jun 4 2008, 07:05 PM
Post
#1
|
|
|
Sparkx Group: [HOSTED] Posts: 343 Joined: 11-October 06 From: Dana Point, CA, USA Member No.: 16,496 |
I’m probably the only person that is able to do so much with Java3D and yet still can't even get some of the Java basics down. Anyway is it (and if so how is it) possible to make a variable editable and readable in multiple class files? It seems like this should be an easy question to answer, but here is a little code to help you understand what I am talking about.
CODE public class test extends Applet{ That should give you the basics what I am doing. I’m just trying to get the collision results back into my original class not just the Behavior class. public int Col = 0; [some long code basically all it does is call for a collision behavior] [(TestB multiple times every 100 milliseconds).] if(Col==1){ [...Some collision handling...] } } class TestB extends Behavior { [I check my collision now I want to set the variable so it can be accessed later] if(collision == true){ Col = 0; }else{ Col = 1; } } Thanks in advanced for helping me with this problem, Sparkx Edit: Spacing and Smilies fixed. This post has been edited by sparkx: Jun 4 2008, 07:07 PM |
|
|
|
Jun 5 2008, 05:28 PM
Post
#2
|
|
|
Whitest Black Mage Group: [MODERATOR] Posts: 1,323 Joined: 20-May 05 From: NB, Canada Member No.: 5,281 |
You could make use of global variables but they are not always the best idea since it's easy to introduce coding problems into applications by making wide use of globals. A good alternative is to simply pass the variables to the constructors or other methods for the different classes and store the true value in a variable in main and just have the various classes modifying the original value.
|
|
|
|
Aug 25 2008, 01:24 AM
Post
#3
|
|
|
Newbie [ Level 2 ] Group: [HOSTED] Posts: 24 Joined: 16-August 08 Member No.: 32,092 |
Try declaring a public variable so you can used with all of the clases, or a protected type so it can be used only by the clases that are in the same package.
For example, public class startProgram{ public static int counter=0; ....... } Then when you want to call it from another class(adding 1): startProgram.counter++; This will be the same with a protected variable type, but you have to we aware that the classes were you are using the global variable are in the same package. Declaring it protected is better for security reasons(like I said before this variable is only reachable from the classes in the same package). If you need more help just write again in this topic I will review it in a time from now. Greetings, shotgun. ------------- OS:Windows Vista Ultimate Sp1 MD:Asus P5N-E CPU:2.40GHz/Intel Quad Core Q6600 RAM:Corsair Dual Channel 4GB 800Mhz VC:XFX GeForce 9800 GTX/512MB |
|
|
|
Aug 25 2008, 06:02 AM
Post
#4
|
|
|
Member [ Level 2 ] Group: [HOSTED] Posts: 57 Joined: 7-November 05 Member No.: 9,489 |
Hi, How about if the startProgram.counter be able modify by different threads.
How do I sync it correctly ? Do I need to place this call in a method configured as synchronized ? Thanks, P.S. I'am new to java and still learning it. |
|
|
|
![]() ![]() |
Similar Topics
|
Lo-Fi Version | Time is now: 6th September 2008 - 01:17 AM |