OOP Frage zu Klassen Design

Status
Nicht offen für weitere Antworten.

beginner99

Aktives Mitglied
Hallo,

hier zuerst eine kurze Einführung, um mein Problem zu erläutern. Mache momentan einen Java Kurs und mir sollten jetzt ein Text-basiertes Spiel erweitern. Mein Spiel kann eigentlich schon deutlich mehr als gefordert aber das ist nicht das Problem. Eher das Design ist IMHO irgendwie nicht so toll.
Es geht mir also mehr um das Desing also das Spiel. Deshalb habe ich dieses Unterforum gewählt.

Das Problem:
Es gibt eine Klasse GameCharacter(kann böse oder gut sein) und eine Klasse Player, die beide von der gleichen abstrakten Klasse GameFigure erben. Eine GameFigure kann bewaffnet sein und die Waffe benutzen, es gibt also auch eine Klasse Weapon.
GameFigure haben einen Gesundheitslevel.

Jetzt will ich einen Kampf zw. Player und GameCharacter simulieren.

Welche Klasse ist jetzt verantwortlich für das abfeuern der Waffe? (GameFigure? oder die Waffe selbst?)

Jede Waffe verfolgt wieviele Schüsse noch im Magazin sind. Ist sie leergeschossen, muss man zuerst nachladen. Wo kontrolliere ich den Ladestatus? Immer bevor man die Waffe benutzt? (etwa so: player.getWeapon().isLoaded())
Oder in der "benutzen" Methode selbst?(Wie gebe ich dann zurück, dass die Waffe nicht abgefeuert wurde bzw. aus welchem Grund nicht? Es kann auch sein, dass der Spieler keine Waffe hat, dann muss er flüchten (brauche mehr als 2 Zustände)).
Jetzt beim schreiben kommt mir folgende Gedanke: enum "useWeaponResult" fired, empty, unarmed.
Aber dies löst das Hauptproblem nicht. Momentan gebe ich in x-verschiedenen Klassen direkt Text aus (anstatt in einer "AusgabeKlasse"), weil es so am einfachsten ist.

Es ist schwer zu erklären, deshalb hier mal die momentane statische Kampfklasse, um das Problem zu zeigen bzw das, ähm, ned so tolle Design. Allgemein macht mir das wesentlich mehr Mühe. Ein Problem zu lösen, geht meist, irgendwie, nur ob es ein guter weg ist, ist die andere Frage.


Java:
import java.util.HashSet;
import java.util.Iterator;
import java.util.Random;
/**
 * This class describes events that can occur in the game. Convert to abstract or Interface
 * for a more general use.
 * 
 * @author  XXXXXXXX
 * @version 0.1
 */
public class GameEvents
{
    
    private static boolean finishFight;
    private static int nrOfItems;    

    /**
     * Constructor for objects of class GameEvents
     */
    public GameEvents()
    {
        
    }
    
    public static boolean onRoomEntry(Room newRoom, Player player)
    {
        HashSet<GameCharacter> gameCharacters = 
            new HashSet<GameCharacter>();
        gameCharacters = newRoom.getCharactersInRoom();
        GameCharacter currentCharacter;
        
        for(Iterator iter = 
            gameCharacters.iterator(); iter.hasNext(); ){
            
            currentCharacter = (GameCharacter)iter.next();
            if (currentCharacter.getType() == CharacterType.EVIL){
                
                //implement other behaviours like agrressivnes, evil but unarmed,...
                return startFireFight(currentCharacter, player);
            }
            else if (currentCharacter.getType() == CharacterType.FRIENDLY){
                // implement friendly character
            }
        }
        return false;
    }
    
    public static boolean startFireFight(
        GameCharacter evilPerson, Player player)
    {
        Random rand = new Random();         
        nrOfItems = evilPerson.getNumberOfItems();
        boolean finishFight = false;
        while(! finishFight) {
            
            if (evilTurnInFight(evilPerson, player))
                //player died. finishGame = true;
                return true;
            
            if (!playerTurnInFight(evilPerson, player)){
                // evilPerson dead, Game continues
                return false;
            }
            
            if(fleeFromRoom(evilPerson)){
                
                finishFight = true;
                return false;
            }
        } 
        return false;
    }
    
    /**
     * Player turn in fight
     * 
     * @return  if the fight should continue or not
     */    
    private static boolean playerTurnInFight(GameCharacter evilPerson, Player player)
    {
        Random rand = new Random();        
        Weapon playerWeapon = player.getCurrentWeapon();
        Parser parser = new Parser();
        Room currentRoom = ((Room)player.getCurrentOwner());
        
        Command command = parser.getCommand();
        if(!(command instanceof WeaponCommand)) {
            System.out.println("You are in a fire fight!");
            System.out.println("You can't do that now!");
        } else {            
            while(playerWeapon == null){
                
                System.out.println("You have to flee or select a weapon!");
                //punish player for beeing unarmed
                evilTurnInFight(evilPerson, player);
                command = parser.getCommand();
                if(!((command instanceof GoCommand) || (command instanceof SelectCommand))) {
                    //punish player entering wrong command
                    System.out.println("You can't do that now!");
                    System.out.println("Select a weapon or flee!");
                    evilTurnInFight(evilPerson, player);
                }                
                else if (command instanceof GoCommand){
                    //flee! Change Room and leave fight
                    command.execute(player);                    
                    return false;
                }
                else if (command instanceof SelectCommand){
                    //select a weapon. if invalid enemy will get
                    //more free shots.
                    finishFight = command.execute(player);
                    playerWeapon = player.getCurrentWeapon();
                }
            }
            // fire only if ammo available.
            if (command.getSecondWord().equalsIgnoreCase("fire")){ 
                if (playerWeapon.getAmmoInMagazine() > 0){
                    
                    finishFight = command.execute(player);
                    if (evilPerson.changeHealth(
                        -5*playerWeapon.getFirePower())){
                            
                            System.out.println(
                                "You shot your enemy " + evilPerson.getName() + "!");
                            System.out.println("But he is still alive!");
                    }
                    else{
                        System.out.println("You killed " + evilPerson.getName() + "!");
                        currentRoom.removeItem(evilPerson);
                        if(nrOfItems > 0)
                            System.out.println(evilPerson.getName() + " dropped something!");
                        finishFight = true;
                        return false;                        
                    }
                }
                else
                    //we get here when weapon is unloaded, 0 shots in magazine
                    //the command has not yet been executed.
                    finishFight = command.execute(player);
            }
            else if (command.getSecondWord().equalsIgnoreCase("reload")){
                finishFight = command.execute(player);
                //punish player while reloading
                int time = playerWeapon.getReloadTime()/2;
                // if player still has ammo, reload
                if(player.getAmmunitionLeft(playerWeapon.getAmmunitionType()) > 0){
                    for (int i = time; i > 0; i--){
                        evilTurnInFight(evilPerson, player);
                        System.out.println("Reloading...");
                    }
                }
                else {
                    System.out.println("No Ammunition left. You must run!");
                    command = parser.getCommand();
                    if(!(command instanceof GoCommand)) {
                        //punish player entering wrong command
                        System.out.println("You can't do that now!");
                        System.out.println("You must run away to stay alive!");
                        evilTurnInFight(evilPerson, player);
                    }
                    else{
                        // run away = leave the room
                        finishFight = command.execute(player);
                        return false;
                    }
                }       
            }
        }
        return true;
    }
    
    
    /**
     * Turn of the evil Player in a fire fight
     * 
     * @return wether the Player died during this turn or not
     */
    private static boolean evilTurnInFight(GameCharacter evilPerson, Player player)
    {
        Random rand = new Random();
        Weapon evilWeapon = evilPerson.getCurrentWeapon();
        if (evilWeapon.fireWeapon()){
           
            if (rand.nextDouble() < evilPerson.getShootingAccuracy()){
                if (player.changeHealth(-evilWeapon.getFirePower()*rand.nextInt(11))){
                    
                    System.out.println("You have been shot by " + evilPerson.getName() + "!");
                    System.out.println("Fire back!");
                    System.out.println(
                        "Health left: " + player.getHealth());
                }
                else {
                    System.out.println("You are shot!");
                    System.out.println("You lost the fight!");
                    System.out.println("You are dead!");
                    finishFight = true;
                    return finishFight;
                }
            }                
            else{
                System.out.println(evilPerson.getName() + " shot at you!");
                System.out.println("He missed. Fire back!");
            }
        }
        else {
            evilWeapon.loadWeapon(evilWeapon.getMagazineSize());
            System.out.println(evilPerson.getName() + " has to reload!");
            System.out.println("Take this chance and finish him!");
        } 
        
        return false;
    }
    /**
     * Actions when friendly person is in the new Room
     * 
     */
    private boolean friendlyPersonAction(GameCharacter friend, Player player){
        
        System.out.println(friend.getName() + " is in the Room.");
        if (fleeFromRoom(friend)){            
            return true;
        }
        else
            System.out.println(friend.getName() + " says: 'Hi'");
            return false;
    }
    
    private static boolean fleeFromRoom(GameCharacter characterToMove)
    {
        Random rand = new Random();
        if(rand.nextFloat() > characterToMove.getChanceOfFleeing()){
            //Character does not flee.
            return false;  
        }
        Room currentRoom = (Room)characterToMove.getCurrentOwner();        
        currentRoom.removeItem(characterToMove);
        String direction = currentRoom.getRandomExitDirection();
        Room nextRoom = currentRoom.getExit(direction);
        characterToMove.setCurrentOwner(nextRoom);
        nextRoom.addItem(characterToMove);
        System.out.println(characterToMove.getName() + " fled from the Room");
        System.out.println("Go '" + direction + "' to follow " + characterToMove.getName() + ".");
        
        return true;
    }
}

Daneben gibts noch die Command und Game Klasse, die ebenfalls direkt Text ausgeben. Momentan ist dies kein Problem, aber sobald man zb, ein GUI machen möchte, sieht es düster aus. Wie man sieht ist momentan die Waffe selbst für abfeuern zuständig, aber mehr als die Munition um 1 zu veringern tut die Methode selbst nicht.

Die Frage ist auch, wo diese "Kampf-Logik" hin gehört. In eine eigene Klasse?
Oder in die GameFigure klasse mit methode:
fireWeapon(GameFigure target);

Fragen über fragen...
 

Tharsonius

Bekanntes Mitglied
Welche Klasse ist jetzt verantwortlich für das abfeuern der Waffe? (GameFigure? oder die Waffe selbst?)
Soweit ich das sehe sollte die Waffe von GameFigure abgefeuert werden, die Waffe allerdings sollte dabei prüfen ob noch Muition vorhanden ist, ob sie zu heiß ist oder was auch immer. Am Ende gibts nur ein Boolean zurück, ob abgefeuert wurde.
Daneben gibt es dann Methoden in der Waffe, die ebenfalls von GameFigure aufgerufen werden.
doReload(), doCooldown() etc.

Wo kontrolliere ich den Ladestatus? Immer bevor man die Waffe benutzt? (etwa so: player.getWeapon().isLoaded())
Oder in der "benutzen" Methode selbst?(Wie gebe ich dann zurück, dass die Waffe nicht abgefeuert wurde bzw. aus welchem Grund nicht? Es kann auch sein, dass der Spieler keine Waffe hat, dann muss er flüchten (brauche mehr als 2 Zustände)).
Das Abfeuern der Waffe liefert nur den Zustand zurück ob sie abgefeuert wurde. Den Munitionsstand kann Deine GameFigure über die von Dir beschriebene Methode abrufen. Entscheiden ob die GameFigure wegläuft machst Du nicht in der Waffe, das macht die GameFigure, abhängig von den Ergebnissen.
Du brauchst halt Methoden
boolean isLoaded()
boolean isTooHot()
die alle von Deiner GameFigure geprüft werden müssen und am Ende entscheidest was Du machst. Hast Du beispielsweise genug Munition (Würde die GameFigure das verwalten lassen und beim Nachladen die eigene Munition verringern) macht ein Nachladen Sinn. Ob das instant passiert oder ob eine Aktion verbraucht wird (und der Gegner wieder dran ist) musst Du entscheiden. Ebenso könnte die Waffe abkühlen müssen, vielleicht ist aber auch int getCooldownTime() der Waffe viel zu hoch, und die GameFigure rennt sofort.

Wenn eine GameFigure keine Waffe hat (weapon == null), dann kann er eine ziehen, wenn eine im Inventar ist oder muss halt weglaufen. Hier sind die Möglichkeiten manigfaltig, je nachdem wie komplex das Spiel werden soll.


Die Frage ist auch, wo diese "Kampf-Logik" hin gehört. In eine eigene Klasse?
Oder in die GameFigure klasse mit methode:
fireWeapon(GameFigure target);

Fragen über fragen...

Ich würde eine Kampfklasse erstellen, dazu eine Methode in GameFigure. Die Kampfklasse ruft dann diese Methode auf.
int makeTurn()
Wenn es nur um Kampf geht kannst Du den Schaden zurück geben. >0 ist der verursachte Schaden, =0 heißt nachgeladen oder sonstwas getan, <0 für weggelaufen. (Mehrere Aktionsmöglichkeiten könntest mit verschiedenen negativen Zahlen differenzieren)
Oder falls Du den Schaden von anderen Faktoren abhängig machen willst kannst Du Dir auch den Basisschaden je nach verwendeter Waffe zurückgeben lassen und kannst dann beispielsweise Rüstung vom Ziel abziehen.
In GameFigure sollten meiner Meinung nach alle relevanten Kampfdaten liegen. Die Auswertung, ob getroffen wurde würde ich wiederum an anderer Stelle durchführen.

Interessant wären in GameFigure auch sicherlich solche Methoden wie
boolean isAlive()
int doDamage(int) (Rückgabewert ist der tatsächlich erlittene Schaden abzüglich Rüstung)
 

Marco13

Top Contributor
Ja, bei solchen "grobgranularen" Designfragen ("Welche Klassenstruktur soll ich für mein Programm verwenden?") kann man beliebig lange reden, philosophieren, planen, und sich überlegen, was das Programm am Ende können soll. Wenn man sich vorstellt, dass das am Ende irgendwann mit einem GUI angezeigt werden soll, müßte man einige Dinge schon ... "abstrakter" und allgemeiner machen. Aber es wäre natürlich denkbar (und sicher auch sinnvoll), das ganze so zu schreiben, dass es am Ende (in gewissen Grenzen natürlich) sowohl mit Textausgabe als auch mit GUI laufen kann.

Ah, sehe gerade dass Tharsonius ja schon geantwortet hat ... Naja. Dann schau dir das erstmal an.
 
B

bygones

Gast
fang mit Tests an... ueberleg dir "was muss man Programm als wichtigstes koennen" - also welches Feature ist das naechste was es tun soll.

Dann schreib einen Test und erst dann fange an den Produktivcode zu schreiben.

Durch dieses Vorgehen ergeben sich (und aendern sich) solche Designfragen. Vorher sich zu ueberlegen wie wo was zu liegen ist und wie wo was implementiert ist kosten meist viel Zeit, viel Diskussion und werden dann sowieso komplett verworfen.

klingt komplizierter als es ist...
 

beginner99

Aktives Mitglied
Also hoffe kriege diese Antwort halbwegs geordnet hin.

GameFigure hat bereits ein isAlive() Methode.

Zum Problem, wer die Waffe abfeuert und der Kampf-logik:

Auf den ersten Blick sollte das ja GameFigure sein. Aber ist das wirklich nötig?
Das einzige was diese Methode tun würde, wäre den Befehl zur Waffe abschieben, die dann die Munition im Magazin verringert. (Die Logik ob getroffen wurde usw. wäre ja in einer separaten Klasse).

Mein Hauptproblem liegt darin, wie ich dem Spieler Rückmeldungen gebe.

die Waffe allerdings sollte dabei prüfen ob noch Muition vorhanden ist, ob sie zu heiß ist oder was auch immer. Am Ende gibts nur ein Boolean zurück, ob abgefeuert wurde.

Aber irgendwie muss ich dem Spieler ja jetzt melden, wieso nicht geschossen wurde.
Keine Munition? Waffe zu heiss? gar keine Waffe vorhanden? Sonst kann er ja nicht entscheiden, ob er nachladen oder flüchten soll.
Ausser ich mach es etwa so:
if (!fireWeapon()) {
if(!isLoaded()){
System.out.println("Please reload the weapon.")
}
}

Aber dann haben wir wieder das Problem, wie ich so eine Ausgabe zb. einem GUI übergeben würde.
 

Tharsonius

Bekanntes Mitglied
Letztendlich wirst Du Dir vorher genau überlegen müssen wie das Programm am Ende aussehen soll. Wenn jetzt Text gehen soll und später eine GUI dazu kommen soll, dann würde ich das Programm von Anfang an mit GUI konzeptionieren, denn Änderungen am Konzept (nur Text -> GUI) führen immer zu weitreichenden Programmänderungen. Also gleich alles einplanen und dann anstelle der GUI nur übergangsweise eine Texteingabe und die Ausgaben setzen.

Somit hast Du die GUI von Anfang an sauber vom Rest getrennt und kannst die GUI verändern ohne den Rest anfassen zu müssen.

Normalerweise hast Du eine Klasse, die als Schnittstelle fungiert. Diese Klasse wird der GUI sagen was anzuzeigen ist und gleichzeitig dem Programmkern die Eingaben mitteilen. Ich verwende normalerweise eine Klasse, die ich Session nenne und die die ganze Steuerung übernimmt. Beim Programmstart wird bei mir das Basisfenster erstellt, dieses erzeugt eine Session und diese Session wird anschließend an alles übergeben, damit jede Komponente darauf zugreifen kann. Hier verwalte ich die Fenster die angezeigt werden und genauso rufe ich von dort die Berechnungsroutinen auf.
 
Zuletzt bearbeitet:
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
W Frage zu anonymen Klassen Java Basics - Anfänger-Themen 4
X Frage zu Sub/Super Klassen Java Basics - Anfänger-Themen 7
D Abstrakte Klassen Verständniss Frage Java Basics - Anfänger-Themen 4
M Frage zu Generics in Klassen, Abstrakten Klassen und Interfaces Java Basics - Anfänger-Themen 5
G Abstrakte Klassen - theoretische Frage Java Basics - Anfänger-Themen 2
G OOP-Frage - Grundlegendes zum erzeugen von Klassen Java Basics - Anfänger-Themen 7
P Klassen Frage zu dem Erstellen von Klassen und Konstruktor ! Java Basics - Anfänger-Themen 10
J Verständniss Frage zu Klassen, Objekte und Methoden Java Basics - Anfänger-Themen 8
T Frage zu Interfaces und Abstrakten Klassen Java Basics - Anfänger-Themen 4
D Datentypen Frage zu Klassen und Arrays! Java Basics - Anfänger-Themen 6
Developer_X Frage zu Klassen Java Basics - Anfänger-Themen 7
A Frage zu verschiedenen Klassen Java Basics - Anfänger-Themen 11
Spin einfache Frage zu Klassen Java Basics - Anfänger-Themen 12
P Frage zu OO (Reihenfolge der Klassen) Java Basics - Anfänger-Themen 2
A frage zur integration von funktionen anderer klassen Java Basics - Anfänger-Themen 2
T Frage zu Klassen und swing Java Basics - Anfänger-Themen 8
T Frage zu Klassen? Java Basics - Anfänger-Themen 6
A Frage zu super, abstracte Klassen und Kapselung Java Basics - Anfänger-Themen 3
G Frage zum Abspeichern von Java-Klassen Java Basics - Anfänger-Themen 9
G Klassen frage Java Basics - Anfänger-Themen 7
Nils_Langner JNI Frage zu Klassen Java Basics - Anfänger-Themen 4
M Frage zum dynamischen Klassen laden Java Basics - Anfänger-Themen 4
G dringende frage zu klassen und methoden ( klassendiagramm) Java Basics - Anfänger-Themen 19
C Newbie Frage zum erstellen von klassen. Java Basics - Anfänger-Themen 4
T Frage zur Wiederverwendung von Klassen Java Basics - Anfänger-Themen 3
Zrebna Frage zu Test-Driven Development (TDD) Java Basics - Anfänger-Themen 3
I Frage Thymeleaf -> Fehler ignorieren und mit "" ersetzen? Java Basics - Anfänger-Themen 15
I Frage Thymeleaf -> Prefix / Suffix ändern? Java Basics - Anfänger-Themen 11
D Rekursions Probleme / frage Java Basics - Anfänger-Themen 4
T Frage zu Parse Java Basics - Anfänger-Themen 2
H Frage an die Profis Java Basics - Anfänger-Themen 4
J Eine konzeptionelle Frage zu OOP Java Basics - Anfänger-Themen 3
P Frage zu Rekursion und Backtracking Java Basics - Anfänger-Themen 2
H Frage zur Ausgabe Java Basics - Anfänger-Themen 4
H Frage zu arithmetischen Operationen Java Basics - Anfänger-Themen 20
F Kurze Frage zu replace() Java Basics - Anfänger-Themen 19
JavaSchmecktLecker Polymorphie Frage zur Methodenüberschreibung Java Basics - Anfänger-Themen 21
J Frage zu einem "Taschenrechner" code Java Basics - Anfänger-Themen 9
B Erste Schritte Frage zu Instanzierung und Referenzen Java Basics - Anfänger-Themen 8
DoubleM Runtime.getRuntime().exec Frage Java Basics - Anfänger-Themen 2
J Eine theoretische Frage zur Praxis - JPanel oder Canvas Java Basics - Anfänger-Themen 5
O Frage: Formaler Typbezeichner? Java Basics - Anfänger-Themen 3
I BlueJ Queue Frage für Klausur Java Basics - Anfänger-Themen 2
N Verständnis Frage zu Variablen Java Basics - Anfänger-Themen 3
N Spezielle frage zum Comparator Java Basics - Anfänger-Themen 6
L Frage zum Array Java Basics - Anfänger-Themen 1
A Frage zum UML Design Java Basics - Anfänger-Themen 1
I Hilfe bei Klausur Frage Java Basics - Anfänger-Themen 8
izoards Drucken Frage zu FAQ Beitrag Java Basics - Anfänger-Themen 2
J Frage zu meinem Code (OOP) Java Basics - Anfänger-Themen 4
sserio Split() -> Regex Frage. Java Basics - Anfänger-Themen 7
A OCA Study Guide: 2. Frage aus Kapitel 3 Java Basics - Anfänger-Themen 9
sserio Date Library Frage Java Basics - Anfänger-Themen 9
Max246Sch Frage zu Währungsrechner Code Java Basics - Anfänger-Themen 2
sserio Frage zu HashMaps Java Basics - Anfänger-Themen 20
sserio Frage zu Threading - Multithreading Java Basics - Anfänger-Themen 2
sserio Frage zu Lambda Ausdrücken Java Basics - Anfänger-Themen 7
sserio Frage zu BigInteger Java Basics - Anfänger-Themen 1
D Frage bzgl. Enum-Handhabung Java Basics - Anfänger-Themen 16
xxx12 Frage Java Basics - Anfänger-Themen 2
I Generelle Frage zu Mikroservices (Spring Boot?), Docker... Java Basics - Anfänger-Themen 7
R Frage zu Methoden (Rückgabewert u. ohne.) Java Basics - Anfänger-Themen 2
A Frage zur programmierung Java Basics - Anfänger-Themen 12
M Frage zur Methode split der Klasse String Java Basics - Anfänger-Themen 32
R Input/Output Frage zu Java IO Java Basics - Anfänger-Themen 6
M Frage zu printWriter Java Basics - Anfänger-Themen 5
C Frage zu OLSMultipleLinearRegression Java Basics - Anfänger-Themen 31
KogoroMori21 Frage zum Euklidischen Algorithmus Java Basics - Anfänger-Themen 11
S Verständnis-Frage zu einer HÜ? Java Basics - Anfänger-Themen 1
F Frage betreff Programm mit dem man C++-Code in JAVA-Code übersetzen lassen kann Java Basics - Anfänger-Themen 2
L Frage zur Ticket Maschine Java Basics - Anfänger-Themen 1
J Frage zu OOP-Klassendiagramm Java Basics - Anfänger-Themen 8
OSchriever Frage zu Compiler Java Basics - Anfänger-Themen 8
H Frage zu Throw Exception Java Basics - Anfänger-Themen 2
TimoN11 Frage zu Java-Vererbung (Cast) Java Basics - Anfänger-Themen 5
Bademeister007 Hallo Leute ich hab eine Frage zur ArrayList Java Basics - Anfänger-Themen 8
F Frage betreff Programmierbücher zu Lagerverwaltung als Konsolenprogramm Java Basics - Anfänger-Themen 3
dieter000 Kurze Frage kann mir ejmand kurz diesen Code erklären, bzw wie man die zeilen erklärt und so Java Basics - Anfänger-Themen 1
I String.split regex Frage Java Basics - Anfänger-Themen 2
N Best Practice Frage zum MVC-Pattern Java Basics - Anfänger-Themen 2
dieter000 Frage zu einem Beispiel... Java Basics - Anfänger-Themen 5
J Frage zum Loggen Java Basics - Anfänger-Themen 18
J Methoden Frage: Array-Werte in anderer Methode ändern Java Basics - Anfänger-Themen 4
Zrebna Frage zum "Referenzen-konzept" in Java Java Basics - Anfänger-Themen 8
JD_1998 Array-Position aus einer Methode in einer anderen ausgeben (Kurze Frage) Java Basics - Anfänger-Themen 2
marcooooo Frage zu bestimmten Beispiel Java Basics - Anfänger-Themen 31
NeoLexx equals()-Methode Verständnis Frage anhand Code Beispiel Java Basics - Anfänger-Themen 22
N Input/Output Eine Frage über system.out.println. Java Basics - Anfänger-Themen 10
B Erste Schritte Learning Coding (!) Frage an erfahrene Programmierer. Java Basics - Anfänger-Themen 23
M konzeptuelle Frage: In welcher Klasse definiert man am Besten Methoden, die die Kommunikation mit dem User regeln? Java Basics - Anfänger-Themen 8
B Frage zum Code verständnis im Resultat Java Basics - Anfänger-Themen 10
C Exception-Frage Java Basics - Anfänger-Themen 3
J Eine Frage zur Schreibweise == ? : Java Basics - Anfänger-Themen 3
S Frage des Designs Java Basics - Anfänger-Themen 1
JavaTalksToMe Extends/Implements Frage Java Basics - Anfänger-Themen 3
pkm Frage zu Servletfunktion Java Basics - Anfänger-Themen 0
B Frage zur Währungsumrechnung Java Basics - Anfänger-Themen 3
S Allgemeine Frage über Generics und Vererbungen Java Basics - Anfänger-Themen 5
Kirby.exe Frage zur Verwendung von Interfaces Java Basics - Anfänger-Themen 6
D Frage zu Strings einer Exception Java Basics - Anfänger-Themen 4

Ähnliche Java Themen

Neue Themen


Oben