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

An earlier module titled Getting Started provided information on howto get started programming with Microsoft's XNA Game Studio.

The three main characteristics of an object-oriented program

Object-oriented programs exhibit three main characteristics:

  • Encapsulation
  • Inheritance
  • Polymorphism

In this and the next two modules, I will explain and illustrate those three characteristics plus some related topics.

Viewing tip

I recommend that you open another copy of this module in a separate browser window and use the following links to easily find and view the Figuresand Listings while you are reading about them.

Figures

  • Figure 1 . Output from the program named Props01.

Listings

  • Listing 1 . Beginning of the class named Props01.
  • Listing 2 . Beginning of the class named TargetClass.
  • Listing 3 . Call the object's public accessor methods.
  • Listing 4 . Definition of setColor and getColor methods in TargetClass.
  • Listing 5 . Set, get, and display a property value with a valid value.
  • Listing 6 . The set Accessor and get Accessor methods for the property named height.
  • Listing 7 . Call manipulator method and display results.
  • Listing 8 . A simple manipulator method named doubleHeight.
  • Listing 9 . Set and get the property named height with an invalid value.
  • Listing 10 . Pause until the user presses any key.
  • Listing 11 . The program named Props01.

General background information

In addition to the three explicit characteristics of encapsulation, inheritance, and polymorphism, an object-oriented program also has an implicitcharacteristic of abstraction .

Abstraction

Abstraction is the process by which we specify a new data type, often referred to as an abstract data type or ADT. This includes a specification ofthe type's data representation and its behavior. In particular,

  • What kind of data can be stored in an entity of the new type?
  • What are all the ways that the data can be manipulated?

How does abstraction relate to encapsulation?

Encapsulation is the process of gathering an ADT's data representation and behavior into one encapsulated entity. In other words, encapsulation convertsfrom the abstract to the concrete .

Some analogies

You might think of this as being similar to converting an idea for an invention into a set of blueprints from which it can be built, or converting aset of written specifications for a widget into a set of drawings that can be used by the machine shop to build the widget.

Automotive engineers encapsulated the specifications for the steering mechanism of my car into a set of manufacturing drawings. Then manufacturingpersonnel used those drawings to produce an object where they exposed the interface (steering wheel) and hid the implementation (levers, bolts, etc.).

In all likelihood, the steering mechanism contains a number of other more-specialized embedded objects, each of which has state and behavior and eachof which also has an interface and an implementation.

The interfaces for those embedded objects aren't exposed to me, but they are exposed to the other parts of the steering mechanism that use them.

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