Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele Haaste: Merkkiluokkien Toteuttaminen | Edistyneet Java-Ominaisuudet ja -Tekniikat
Java-tietorakenteet

Haaste: Merkkiluokkien Toteuttaminen

Pyyhkäise näyttääksesi valikon

Tehtävä

Laadi Java-ohjelma, joka käyttää enum-tyyppiä nimeltä CharacterClass erilaisten pelihahmoluokkien esittämiseen. Jokaisella hahmoluokalla tulee olla liitetyt ominaisuudet kuten elinvoimapisteet (hp) ja hyökkäyspisteet (atk). Toteuta metodi printStats(), joka tulostaa hahmon tilastot.

Main.java

Main.java

123456789101112131415161718
enum CharacterClass { WARRIOR, MAGE, ARCHER, ROGUE, // Write your code here } public class Main { public static void main(String[] args) { // Test the enum methods CharacterClass warrior = CharacterClass.WARRIOR; CharacterClass mage = CharacterClass.MAGE; warrior.printStats(); mage.printStats(); } }
  • Määrittele enum nimeltä CharacterClass, jossa on eri hahmoluokkia (esim. Warrior, Mage) ja niiden ominaisuudet (esim. hp, atk);
  • Lisää enum-tyyppiin konstruktori, joka alustaa kunkin hahmoluokan ominaisuudet;
  • Toteuta enum-tyyppiin metodi printStats(), joka tulostaa hahmon tilastot, mukaan lukien luokan nimi, elinvoimapisteet (hp) ja hyökkäyspisteet (atk);
  • Luo pääohjelmassa hahmoluokkien ilmentymiä ja kutsu printStats()-metodia niiden tilastojen näyttämiseksi.
package com.example;

// Enum definition
enum CharacterClass {
    WARRIOR(100, 20), MAGE(80, 30), ARCHER(90, 25), ROGUE(85, 28);

    // Attributes
    private final int hp;
    private final int atk;

    // Constructor
    CharacterClass(int hp, int atk) {
        this.hp = hp;
        this.atk = atk;
    }

    // Method to print character statistics
    public void printStats() {
        System.out.println("Character Class: " + this);
        System.out.println("Health Points (HP): " + hp);
        System.out.println("Attack Points (ATK): " + atk);
        System.out.println();
    }
}

public class Main {
    public static void main(String[] args) {
        // Test the enum methods
        CharacterClass warrior = CharacterClass.WARRIOR;
        CharacterClass mage = CharacterClass.MAGE;

        warrior.printStats();
        mage.printStats();
    }
}
Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 4. Luku 2

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme

Osio 4. Luku 2
some-alt