Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /home/e5m7uo8vro0d/public_html/mediawiki/includes/MagicWord.php on line 860

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /home/e5m7uo8vro0d/public_html/mediawiki/includes/MagicWord.php on line 860

Warning: preg_match_all(): Compilation failed: group name must start with a non-digit at offset 4 in /home/e5m7uo8vro0d/public_html/mediawiki/includes/MagicWord.php on line 834

Warning: Invalid argument supplied for foreach() in /home/e5m7uo8vro0d/public_html/mediawiki/includes/MagicWord.php on line 835

Warning: preg_replace(): Compilation failed: group name must start with a non-digit at offset 4 in /home/e5m7uo8vro0d/public_html/mediawiki/includes/MagicWord.php on line 839

Warning: preg_match_all(): Compilation failed: group name must start with a non-digit at offset 4 in /home/e5m7uo8vro0d/public_html/mediawiki/includes/MagicWord.php on line 834

Warning: Invalid argument supplied for foreach() in /home/e5m7uo8vro0d/public_html/mediawiki/includes/MagicWord.php on line 835

Warning: preg_replace(): Compilation failed: group name must start with a non-digit at offset 4 in /home/e5m7uo8vro0d/public_html/mediawiki/includes/MagicWord.php on line 839

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /home/e5m7uo8vro0d/public_html/mediawiki/includes/MagicWord.php on line 860

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /home/e5m7uo8vro0d/public_html/mediawiki/includes/MagicWord.php on line 860

Warning: preg_match_all(): Compilation failed: group name must start with a non-digit at offset 4 in /home/e5m7uo8vro0d/public_html/mediawiki/includes/MagicWord.php on line 834

Warning: Invalid argument supplied for foreach() in /home/e5m7uo8vro0d/public_html/mediawiki/includes/MagicWord.php on line 835

Warning: preg_replace(): Compilation failed: group name must start with a non-digit at offset 4 in /home/e5m7uo8vro0d/public_html/mediawiki/includes/MagicWord.php on line 839

Warning: preg_match_all(): Compilation failed: group name must start with a non-digit at offset 4 in /home/e5m7uo8vro0d/public_html/mediawiki/includes/MagicWord.php on line 834

Warning: Invalid argument supplied for foreach() in /home/e5m7uo8vro0d/public_html/mediawiki/includes/MagicWord.php on line 835

Warning: preg_replace(): Compilation failed: group name must start with a non-digit at offset 4 in /home/e5m7uo8vro0d/public_html/mediawiki/includes/MagicWord.php on line 839

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /home/e5m7uo8vro0d/public_html/mediawiki/includes/MagicWord.php on line 860

Warning: preg_match_all(): Compilation failed: group name must start with a non-digit at offset 4 in /home/e5m7uo8vro0d/public_html/mediawiki/includes/MagicWord.php on line 834

Warning: Invalid argument supplied for foreach() in /home/e5m7uo8vro0d/public_html/mediawiki/includes/MagicWord.php on line 835

Warning: preg_replace(): Compilation failed: group name must start with a non-digit at offset 4 in /home/e5m7uo8vro0d/public_html/mediawiki/includes/MagicWord.php on line 839

Warning: preg_match_all(): Compilation failed: group name must start with a non-digit at offset 4 in /home/e5m7uo8vro0d/public_html/mediawiki/includes/MagicWord.php on line 834

Warning: Invalid argument supplied for foreach() in /home/e5m7uo8vro0d/public_html/mediawiki/includes/MagicWord.php on line 835

Warning: preg_replace(): Compilation failed: group name must start with a non-digit at offset 4 in /home/e5m7uo8vro0d/public_html/mediawiki/includes/MagicWord.php on line 839

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /home/e5m7uo8vro0d/public_html/mediawiki/includes/MagicWord.php on line 860

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /home/e5m7uo8vro0d/public_html/mediawiki/includes/MagicWord.php on line 860

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /home/e5m7uo8vro0d/public_html/mediawiki/includes/MagicWord.php on line 860

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /home/e5m7uo8vro0d/public_html/mediawiki/includes/MagicWord.php on line 860

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /home/e5m7uo8vro0d/public_html/mediawiki/includes/MagicWord.php on line 860
Holodeck Design Project - Huben's Wiki

Holodeck Design Project

From Huben's Wiki
Jump to: navigation, search
 
Line 1: Line 1:
 
It is a little known fact that the Holodeck is programmed in Java.  You need to develop a new holodeck simulation that has 5 different classes with particular methods.
 
It is a little known fact that the Holodeck is programmed in Java.  You need to develop a new holodeck simulation that has 5 different classes with particular methods.
  
{| border="1" align="center"
+
{| border="1"
|-
+
|-  align="center"
 
! class
 
! class
 
! graze()
 
! graze()
 
! fly()
 
! fly()
! trunk()
+
! ears()
 
! hooves()
 
! hooves()
 
! flame()
 
! flame()
|-
+
|- align="center"
! Horse || X ||  ||  || X ||
+
! Horse  
|-
+
| X ||  ||  || X ||
! Elephant || X ||  || X ||  ||
+
|- align="center"
|-
+
! Elephant  
! Pegasus || X || X ||  || X ||
+
| X ||  || X ||  ||
|-
+
|- align="center"
! Dumbo || X || X || X ||  ||
+
! Pegasus  
|-
+
| X || X ||  || X ||
! Dragon ||  || X ||  ||  || X
+
|- align="center"
 +
! Dumbo  
 +
| X || X || X ||  ||
 +
|- align="center"
 +
! Dragon  
 +
|  || X ||  ||  || X
 
|}
 
|}
  
Line 24: Line 29:
 
* You will create super classes and/or interfaces as needed so that you could use polymorphism for the methods that are present in more than one class.
 
* You will create super classes and/or interfaces as needed so that you could use polymorphism for the methods that are present in more than one class.
 
* To keep it simple, all methods have no arguments and return strings with the class name and the method name, such as "Dragon flame".  If a method is inherited, you can just use the inherited method: no need to override the method.
 
* To keep it simple, all methods have no arguments and return strings with the class name and the method name, such as "Dragon flame".  If a method is inherited, you can just use the inherited method: no need to override the method.
 +
* None of your classes should have methods that are not checked: Dragon should not have a graze() method.
 
* Use the following class to see your results.
 
* Use the following class to see your results.
 +
 +
<pre>
 +
public class Holodeck
 +
{
 +
  public static void main(String[] args)
 +
  {
 +
    Horse h = new Horse();
 +
    Elephant e = new Elephant();
 +
    Pegasus p = new Pegasus();
 +
    Dumbo d = new Dumbo();
 +
    Dragon r = new Dragon();
 +
 +
    // Replace the XXX with the appropriate class or interface for each line.
 +
    // The line should compile and the print() later on should not have errors either.
 +
    // XXX should be a type that gives a method such as fly().
 +
    // This should demonstrate polymorphism: each object knows its own methods.
 +
    XXX[] eared = {e, d};            // classes with ears()
 +
    XXX[] hooved = {h, p};          // classes with hooves()
 +
    XXX[] grazers = {h, e, p, d};  // classes with graze()
 +
    XXX[] fliers = {p, d, r};          // classes with fly()
 +
   
 +
    System.out.print("ears():  ");
 +
    for (int i = 0; i < eared.length; i++)
 +
      System.out.print(eared[i].ears() + "    ");
 +
    System.out.println();
 +
   
 +
    System.out.print("hooves():  ");
 +
    for (int i = 0; i < hooved.length; i++)
 +
      System.out.print(hooved[i].hooves() + "    ");
 +
    System.out.println();
 +
 +
    System.out.print("graze():  ");
 +
    for (int i = 0; i < grazers.length; i++)
 +
      System.out.print(grazers[i].graze() + "    ");
 +
    System.out.println();
 +
 +
    System.out.print("fly():  ");
 +
    for (int i = 0; i < fliers.length; i++)
 +
      System.out.print(fliers[i].fly() + "    ");
 +
    System.out.println();
 +
  }
 +
}
 +
</pre>

Latest revision as of 18:13, 31 January 2013

Personal tools
translate