<< 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.

Questions & Answers

Text editor project in c++
Ayesha Reply
hi daddy
Sreenu
hello sir
Ranjith
are unmanned flying machines that are built and equipped with various kinds of software systems that allow them to see, hear, and act. Discuss some of the societal challenges of building such kinds of systems.
johni Reply
You have developed a prototype of a software system and your manager is very impressed by it. She proposes that it should be put into use as a production sys tem, with new features added as required. This avoids the expense of system dev immediately useful. Write a short report for your manager expl
johni
You have developed a prototype of a software system and your manager is very impressed by it. She proposes that it should be put into use as a production sys tem, with new features added as required. This avoids the expense of system dev immediately useful.
johni
You have developed a prototype of a software system and your manager is very impressed by it. She proposes that it should be put into use as a production sys tem, with new features added as required. This avoids the expense of system dev immediately useful.
johni
You have developed a prototype of a software system and your manager is very impressed by it. She proposes that it should be put into use as a production sys tem, with new features added as required. This avoids the expense of system dev immediately useful. Write a short report for your manager expl
johni
You have developed a prototype of a software system and your manager is very impressed by it. She proposes that it should be put into use as a production sys tem, with new features added as required. This avoids the expense of system dev immediately useful.
johni
what is cocomo ?
Surabhi Reply
?
StReeT
give me coding of these projects
Aman Reply
feasibility study&fact gathering techniques
Nachi Reply
write about software engineering
Mandala Reply
8.10.0.
BARBU
define iterative model. example of iterative model. advantages and disadvantages of iterative model. when to use iterative model
Okello Reply
What is DFD in Software engineering
Hamid
i try out in netbeans this code:public class Profile { private Profile(int w) { // line 1 System.out.println(w); } public final Profile() { // line 5 System.out.println(10); } public static void main(String args[]) { Profile obj = new Profile(50); } } It is the question 5, and the answer is 50
Jacqueline Reply
how to join conversation
Bablu
i need help....Discuss the factors that influence the choice of the software development methodology to use when implementing software projects?(20)
tatenda Reply
The success rate of software development projects can be increased by using a methodology that is adequate for the specific characteristics of those projects.  then the focus on RAD,XP,RUP.
Hemant
hemant hie...it is a presentation i am working on...can you help me wth the introduction....please a powerful one hahahahha
tatenda
yes
Hemant
Define and show all Dipthongs and vowels used in english phonetics
Okendro Reply
what is the software engineering
Axmed Reply
please
Jennifer
hhahhaha
martin
software engineering is a organized process of activities for development a use full software . it may consist of : 1:spcecification 2:design 3: implementation 4: evolution:
hamayun
Please how can I create an application?
Eric Reply
please how can I create an application
Nchor
How do we create a software
Florence Reply
give a more direct question
Louis Reply
what is semantics?
amjad
what r the computer codes
Kawuba Reply
machine code, source code , object code, and byte code etc
Hemant
Got questions? Join the online conversation and get instant answers!
Jobilize.com Reply

Get the best Algebra and trigonometry course in your pocket!





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