You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
davhojt 1cf114eb85
docs(java): move piscine exercises from subjects/java-piscine -> subjects/java/piscine
1 year ago
..
README.md docs(java): move piscine exercises from subjects/java-piscine -> subjects/java/piscine 1 year ago

README.md

StarGalaxy

Instructions

Create a new class Galaxy in a file named Galaxy.java.

It has one private property : celestialObjects of type List<CelestialObject>.

It has one constructor with no parameters, which instantiate an empty list in the celestialObjects property.

We add a getter for the celestialObjects property (getCelestialObjects).

We create a new method addCelestialObject with a CelestialObject argument. This method adds the object in parameter to the celestialObjects list.

Usage

Here is a possible ExerciseRunner.java to test your function :

import java.util.List;

public class ExerciseRunner {

    public static void main(String[] args) {
        Galaxy galaxy = new Galaxy();
        CelestialObject lune = new CelestialObject("Lune", -123.12, 392.238, 32.31);
        Star betelgeuse = new Star("Betelgeuse", 128.23, -12.82, 32.328, 1289.3);
        Planet naboo = new Planet("Naboo", 17.4389, 8349.1, 8943.92, betelgeuse);
        
        galaxy.addCelestialObject(lune);
        galaxy.addCelestialObject(betelgeuse);
        galaxy.addCelestialObject(naboo);
        
        List<CelestialObject> celestialObjects = galaxy.getCelestialObjects();
        
        for (CelestialObject celestialObject : celestialObjects) {
            System.out.println(celestialObject.toString());
        }
    }
}

and its output :

$ javac *.java -d build
$ java -cp build ExerciseRunner 
Lune is positioned at (-123,120, 392,238, 32,310)
Betelgeuse shines at the 1289.300 magnitude
Naboo circles around Betelgeuse at the 12220.902 AU
$ 

Notions

Polymorphism