<< Chapter < Page
  Xna game studio     Page 11 / 12
Chapter >> Page >

Validating code

You can write whatever validating code is appropriate before assigning the incoming value to a private instance variable or perhaps storing it in a privatedata structure of some other type.

In this case, the value is accepted and stored in the private instance variable named heightData if it is less than 84 (the height in inches of a person that is seven feet tall). If the incoming value is greaterthan 83, it is not accepted and instead is flagged as invalid by storing 0 in the private instance variable.

A read-only property

You can omit the code on the set side if you need a read-only property.

Little more to say about this

There isn't much more that I can say to explain this syntax other than to tell you to memorize it. The code in Listing 5 causes the fourth line of text shown in Figure 1 to be displayed on the black screen.

Call manipulator method and display results

In addition to making it possible to set and get property values, objects often provide other public interface methods of varying complexity that make itpossible to manipulate the data stored in the object in a variety of ways. In those cases, the using programmer needs access to good documentation thatexplains the behavior of such manipulator methods.

Returning to the Main method, Listing 7 calls a manipulator method named doubleHeight (belonging to the object of type TargetClass ) that is designed to double the value of the height property. Then Listing 7 accesses and displays the new value of the height property.

Listing 7 . Call manipulator method and display results.

obj.doubleHeight(); Console.WriteLine("double height: " + obj.height);

A manipulator method named doubleHeight

Listing 8 shows the manipulator method named doubleHeight that is defined in the class named TargetClass .

Listing 8 . A simple manipulator method named doubleHeight.

public void doubleHeight(){ heightData *= 2;}//end doubleHeight //--------------------------------------------------//}//end TargetClass

The method multiplies the current value in the private instance variable that is used to store the property named height by a factor of two, stores the modified value back into the same variable, and returns void .

The code in Listing 7 causes the fifth line of text shown in Figure 1 to be displayed.

Listing 8 also signals the end of the class named TargetClass .

Set and get the property with an invalid value

Returning once more to the Main method, Listing 9 attempts to set an invalid value into the property named height .

Listing 9 . Set and get the property named height with an invalid value.

obj.height = 100; Console.WriteLine("height: " + obj.height);

Then it retrieves and displays the value currently stored in that property.

As you saw in Listing 6 , when an attempt is made to set a value greater than 83 in the property, a value of 0 is set in the property to flag it as invalid.

The code in Listing 9 causes the last line of text in Figure 1 to be displayed on the black screen.

Pause until the user presses any key

The last statement in the Main method, shown in Listing 10 , causes the program to block and wait until the user presses a key. This causesthe black screen to remain on the desktop until the user is finished viewing it.

Get Jobilize Job Search Mobile App in your pocket Now!

Get it on Google Play Download on the App Store Now




Source:  OpenStax, Xna game studio. OpenStax CNX. Feb 28, 2014 Download for free at https://legacy.cnx.org/content/col11634/1.6
Google Play and the Google Play logo are trademarks of Google Inc.

Notification Switch

Would you like to follow the 'Xna game studio' conversation and receive update notifications?

Ask