Klassen Instanzen einer Klasse in einer anderen unabhängigen Klasse nutzen

Janomikado

Mitglied
Hallo, ich habe da mal eine Frage wegen Instanzen. Wie kann ich in einer Klasse A , die keine Subklasse von Klasse B ist, trotzdem die Instanzen der Klasse B nutzen? Ich versuche es mit B.Instanzname ,aber leider ohne Erfolg. Ich habe euch mal meine Datei mit angehängt, damit das hoffentlich verständlicher wird.
Außerdem sind auch keine Kommentare mit dabei, da die Aufgabe von einer Altklausur ist und bei denen steht ziemlich genau drauf, was von uns verlangt wird (Zeitlich würde es aber sonst auch ziemlich knapp werden).

Ich freue mich über jede Antwort und gebt gerne Bescheid, falls ihr noch was braucht.
 

Anhänge

  • Daten.txt
    1,8 KB · Aufrufe: 0

KonradN

Super-Moderator
Mitarbeiter
Code bitte nicht als Datei anhängen sondern in Code Tags posten. Dazu einfach den Knopf </> links oberhalb des Eingabebereiches nutzen.

Dein Code war:
Java:
package iam;

import java.util.*;

class Daten {
    
    double _radius;
    double _viskositaet;
    
    public Daten( double radius, double viskositaet) {
        
        _radius=radius;
        this._viskositaet=viskositaet;
    }
    
    public double radius() {
        return _radius;
    }
    public double viskositaet () {
        return _viskositaet;
    }   
}

class Stroemung{
    
    double mittlereGeschwindigkeit;
    
    public Stroemung(Daten daten, double volumenstrom) {
        mittlereGeschwindigkeit = volumenstrom /(3.14* daten._radius * daten._radius);
    }
    
    public void ausgabeGeschwindigkeit() {
        System.out.println("v_mittl.= "+mittlereGeschwindigkeit);
    }
    
    public double berechneReynolds (Daten daten) {
        double Re= (Math.abs(mittlereGeschwindigkeit)*2*daten._radius)/daten._viskositaet;
        return Re;
    }
}

class Rohrstroemung{
    
    public static void main (String [] args) {
        
        Locale.setDefault(Locale.US);
        Scanner sc=new Scanner (System.in);
        
        double radius,volumenstrom;
        final double viskositaet= 1e-6;
        
        System.out.println("Radius >0 eingeben:");
        radius= sc.nextDouble();
        while(radius<=0) {
            System.out.println("radius>0 eingeben:");
            radius=sc.nextDouble();
        }
        
        System.out.println("Volumenstrom angeben Wert Teil der rellen Zahlen:");
        volumenstrom= sc.nextDouble();
        
        Daten daten= new Daten();
        daten._radius=radius;
        daten._viskositaet= viskositaet;
        
        Stroemung stroemung = new Stroemung();
        ausgabeGeschwindigkeit ( Stroemung (daten) );
        
        System.out.println("Reynolds-Zahl= " + Stroemung.berechneReynolds (daten) );
        
        if( Stroemung.berechneReynolds (daten) >2300) {
            System.out.println("Reynolds-Zahl Re über krit. Reynolds-Zahl 2300.");
        } else {
            System.out.println("Reynolds-Zahl Re nicht über krit. Reynolds-Zahl 2300.");
        }
    }
}

Wenn Du also die Klasse Stroemung nutzen willst, dann musst Du das so machen, wie es die Methoden / der Konstruktor vorgeben.

Der Konstruktor ist ja: public Stroemung(Daten daten, double volumenstrom) { es werden somit zwei Informationen benötigt. Das kann in deinem Code so aussehen:
Stroemung stroemung = new Stroemung(daten, volumenstrom);

Wenn Du dann die Methode ausgabeGeschwindigkeit aufrufen willst, dan machst Du es auf der konkreten Instanz, also
stroemung.ausgabeGeschwindigkeit()
 

Janomikado

Mitglied
Code bitte nicht als Datei anhängen sondern in Code Tags posten. Dazu einfach den Knopf </> links oberhalb des Eingabebereiches nutzen.
Ok, werde ich mir merken.

Wenn Du also die Klasse Stroemung nutzen willst, dann musst Du das so machen, wie es die Methoden / der Konstruktor vorgeben.

Der Konstruktor ist ja: public Stroemung(Daten daten, double volumenstrom) { es werden somit zwei Informationen benötigt. Das kann in deinem Code so aussehen:
Stroemung stroemung = new Stroemung(daten, volumenstrom);

Wenn Du dann die Methode ausgabeGeschwindigkeit aufrufen willst, dan machst Du es auf der konkreten Instanz, also
stroemung.ausgabeGeschwindigkeit()
Habe es verstanden und gerade angewandt und es klappt!
Ich danke dir vielmals, KonradN !
 

Janomikado

Mitglied
Daten daten= new Daten( radius, viskositaet);
daten._radius=radius;
daten._viskositaet= viskositaet;
Eine Frage hätte ich wegen dem Teil des verbesserten Codes: Wann muss ich

Java:
    daten._radius = radius; // bzw. viskositaet

so hinschreiben und initialisieren? Bei dem Code habe ich die zwei Zeilen nicht gebraucht.
 

Neumi5694

Top Contributor
An dem Punkt, an dem der Radius deines bereits existierenden Datenobjekts von geändert werden soll. Auf jeden Fall bevor du vorhast, auf den geänderten Wert zuzugreifen.

Dass man die Werte besser hinter Methoden verstecken sollte anstatt direkten Zugriff darauf zu erlauben, ist eh klar.
Auf die Konventionen lass ich mal jemand anderen verweisen, der mehr Spaß daran hat.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
G zwei Instanzen einer Klasse Java Basics - Anfänger-Themen 29
F Mehrere Instanzen der Klasse A EINER Instanz der Klasse B übergeben Java Basics - Anfänger-Themen 3
M Alle Instanzen einer Klasse ansprechen Java Basics - Anfänger-Themen 4
H Erste Schritte JTree: Instanzen einer Klasse speichern oder Namen/Strings... Java Basics - Anfänger-Themen 4
B OOP Summe aus verschiedenen Instanzen einer Klasse berechnen Java Basics - Anfänger-Themen 2
O Liste aller Instanzen einer Klasse Java Basics - Anfänger-Themen 18
C Referenzen zu Instanzen einer Klasse im Array Java Basics - Anfänger-Themen 8
S alle instanzen einer klasse löschen Java Basics - Anfänger-Themen 18
A Mehrere Instanzen einer eigenen Klasse in einem Array Java Basics - Anfänger-Themen 5
D Instanzen einer Klasse Java Basics - Anfänger-Themen 6
G alle Instanzen einer Klasse serialisieren Java Basics - Anfänger-Themen 4
Silver-Blue mehrere Instanzen einer Klasse, trotz Random immer das Selbe Java Basics - Anfänger-Themen 7
C Was machen mit nicht mehr verwendeten Instanzen ? Java Basics - Anfänger-Themen 18
C Instanzen, wann muss ich Instanzen erzeugen & wo?) Java Basics - Anfänger-Themen 23
A Klassen Zugriff auf Instanzen Java Basics - Anfänger-Themen 2
Z Was habe ich davon mit einem Datentyp verschiedene Instanzen zu haben? Java Basics - Anfänger-Themen 6
Q OOP Mehrere Instanzen auf ein Feld Java Basics - Anfänger-Themen 13
G Instanzen eines Interfaces erzeugen Java Basics - Anfänger-Themen 7
S Direkt Instanzen anlegen Java Basics - Anfänger-Themen 1
K Variablen Instanzen gleich aber warum ? Java Basics - Anfänger-Themen 3
D Instanzen durch Methode Java Basics - Anfänger-Themen 14
W Zugriff auf Instanzen von Klassen Java Basics - Anfänger-Themen 8
S aus Text Datei Instanzen erzeugen, so richtig? Java Basics - Anfänger-Themen 4
H Klassen Instanzen mit anderen Klassen erzeugen Java Basics - Anfänger-Themen 5
B Enum: Instanzen Java Basics - Anfänger-Themen 10
M Instanzen vergleichen? Java Basics - Anfänger-Themen 12
H Klassen, Konstruktoren, Instanzen etc Java Basics - Anfänger-Themen 6
W Instanzen, Klassen Java Basics - Anfänger-Themen 2
C Vectorarrays und Instanzen Java Basics - Anfänger-Themen 10
C OOP Instanzen ansprechen Java Basics - Anfänger-Themen 3
P Verständnisfrage zu Instanzen/Objekten Java Basics - Anfänger-Themen 9
B Zugriff auf Variablen in nicht bekannten Instanzen Java Basics - Anfänger-Themen 6
R mit klassen-instanzen arbeiten in packages Java Basics - Anfänger-Themen 10
M Instanzen, Referenzen und Collections Java Basics - Anfänger-Themen 3
W mehrere (numerierte) Instanzen erzeugen Java Basics - Anfänger-Themen 3
M Dynamisch Instanzen erstellen. Java Basics - Anfänger-Themen 4
N Instanzen von beliebigen Klassen aus dem Filesystem erzeugen Java Basics - Anfänger-Themen 7
M Problem mit Instanzen von JLabel Java Basics - Anfänger-Themen 4
E Vermeiden,dass mehrere Instanzen eines Java-Programms laufen Java Basics - Anfänger-Themen 2
V mehrere Instanzen gleicher Name möglich? Java Basics - Anfänger-Themen 3
E instanzen von Klassen erzeugen Java Basics - Anfänger-Themen 2
H Instanzen erzeugen und Methoden aufrufen Java Basics - Anfänger-Themen 5
L verschiedene JPanel-Instanzen erstellen Java Basics - Anfänger-Themen 8
K Eindeutige Instanzen von einem Objekt Java Basics - Anfänger-Themen 13
T Wo Daten ablegen für mehrere Servlet-Instanzen? Java Basics - Anfänger-Themen 2
G Instanzen in einem Feld erzeugen Java Basics - Anfänger-Themen 9
J Instanzen dynamisch erzeugen Java Basics - Anfänger-Themen 8
T Instanzen von abstrakten Klassen? Java Basics - Anfänger-Themen 14
G Speicherung von Referenzen auf Instanzen Java Basics - Anfänger-Themen 5
W Instanzen herunterzählen Java Basics - Anfänger-Themen 7
G Instanzen und Referenzen Java Basics - Anfänger-Themen 5
S Instanzen Java Basics - Anfänger-Themen 4
G wenn auch schon oft gefragt (Konstruktor , Instanzen , usw) Java Basics - Anfänger-Themen 6
M Ausgabe einer ArrayList ensteht nur als Hashcode, nicht als Objekt Java Basics - Anfänger-Themen 16
D 2 ArrayListen gleich sortieren bzw. eine Liste anhand einer anderen Sortieren Java Basics - Anfänger-Themen 6
ixChronos Letzten 4 Ziffern einer großen Zahl ausgeben Java Basics - Anfänger-Themen 3
P Objekt einer Methode eines anderen Objektes übergeben Java Basics - Anfänger-Themen 5
L Variablenwerte aus einer Methode übergeben Java Basics - Anfänger-Themen 2
E Arrays in einer ArrayList miteinander vergleichen Java Basics - Anfänger-Themen 12
Simon16 Java ArrayListe von einer Klasse sortieren Java Basics - Anfänger-Themen 2
Shadowrunner Variablen Gibt es eine Möglichkeit die Ziffern/Stellen einer Zahl fest zu legen? Java Basics - Anfänger-Themen 3
D remove Object von einer Liste von Obejcts Java Basics - Anfänger-Themen 3
FunkyPhil94 Wert in einer Lambda Funktion erhöhen Java Basics - Anfänger-Themen 3
T Aufruf der Methode einer Oberklasse, wenn sie in der Unterklasse überschrieben ist. Polymorphie. Java Basics - Anfänger-Themen 2
B Kommunikation mit Seriellen Schnittstellen + Integration einer lib Java Basics - Anfänger-Themen 1
A Daten aus einer HashMap aus einer DB speichern und mit neuen Werten vergleichen Java Basics - Anfänger-Themen 8
P Welches SDK für das erstellen einer ausführbaren Datei? Java Basics - Anfänger-Themen 4
D Länge einer Liste aufrufen. Java Basics - Anfänger-Themen 19
B Alle Strings bis zu einer Maimallänge aufzählen, die Bedingung erfüllen Java Basics - Anfänger-Themen 13
marcelnedza Finde meinen Fehler in einer Methode nicht, Java Karol Java Basics - Anfänger-Themen 15
Soranix Erste Schritte Struktur als Anfänger // Von einer Klasse auf ein Objekt einer anderen Klasse zugreifen. Java Basics - Anfänger-Themen 6
MoxMorris Wie macht man String[] = String[] aus einer anderer Methode? Java Basics - Anfänger-Themen 18
T Fibonacci mit einer Hilfsmethode berechnen Java Basics - Anfänger-Themen 10
S Hilfe zu einer Aufgabe Java Basics - Anfänger-Themen 5
M Radius von einer ellipse bestimmen Java Basics - Anfänger-Themen 7
Say Fehlenden Code finden in einer while-Schleife? Java Basics - Anfänger-Themen 11
M Zufallszahl generieren mit einer linken und rechten Grenze Java Basics - Anfänger-Themen 3
N Was Passiert mit dem Namen einer Variable, wenn man diese einer Liste Hinzufügt Java Basics - Anfänger-Themen 16
_user_q Wie eine Methode/Funktion aus einer Klasse mit Constructor aufrufen? Java Basics - Anfänger-Themen 20
W String einer Textdatei in einzelne Stringobjekte pro Zeile aufteilen Java Basics - Anfänger-Themen 14
W Objekte einer ArrayList in txt-datei schreiben mit Paths? Java Basics - Anfänger-Themen 2
S Best Practice Fragen zu Projektstruktur einer Datenbank-Abfrage-App (MVC) Java Basics - Anfänger-Themen 13
T Variable von Objekten in einer Methode überprüfen Java Basics - Anfänger-Themen 26
nelsonmandela Problem bei Ausgabe einer Switch - Case Funktion Java Basics - Anfänger-Themen 5
S Textausgabe in einer For-Schleife Java Basics - Anfänger-Themen 12
M Spezifischen Wert einer Zeile aus .txt Datei entnehmen Java Basics - Anfänger-Themen 15
B Popups mit Klicksabfangen zumAusfüllen einer .ods Datei Java Basics - Anfänger-Themen 0
M RandomAccessFile int und String gleichzeitig in einer Datei Java Basics - Anfänger-Themen 49
E Suchfunktion in einer Liste Java Basics - Anfänger-Themen 39
T ungeordnete Werte-Paare in einer Liste Java Basics - Anfänger-Themen 7
FireHorses Einen Command erst nach einer Chateingabe aktivieren Java Basics - Anfänger-Themen 1
frager2345 Singleton-Muster Java ->Nur eine Instanz einer Klasse erzeugen können Java Basics - Anfänger-Themen 45
F wie kann ich die Position des letzten Vokals innerhalb einer Zeichenkette ermitteln? Java Basics - Anfänger-Themen 5
H Kapselung protected aber in einer Kindklasse nicht zugänglich Java Basics - Anfänger-Themen 5
R Methoden Werte einer ArrayList als Parameter übergeben. Java Basics - Anfänger-Themen 4
B Den Dateipfad einer Java Datei durch Code in Selbiger finden? Java Basics - Anfänger-Themen 10
LilliCherry Array in einer Zeile ausgeben Java Basics - Anfänger-Themen 6
B Attribute eines Objekts einer Klasse durch statische Methode einer 2. Klasse ändern? Java Basics - Anfänger-Themen 32
L Dauerhaftes Speichern einer Eingabe bei einer ArrayList Java Basics - Anfänger-Themen 26
V Hilfe bei Implementierung einer boolean Methode Java Basics - Anfänger-Themen 6

Ähnliche Java Themen

Neue Themen


Oben