Wie können Klassen nicht-materialisierte Attribute haben, die nur über get/ set-Mehoden simuliert sind?

K

kneitzel

Gast
Die Begriffe sagen mir so erst einmal nichts, daher wäre die Frage, wie das definiert wurde.

Generell kann man Methoden haben, die z.B. etwas setzen oder Abfragen, ohne dass der Wert selbst vor kommt.

Beispiel:
Du hast eine Klasse Uhrzeit. Du speicherst aber nur die Anzahl der Sekunden, die seit 0 Uhr vergangen sind.
Du kannst aber natürlich jetzt Getter und Setter für Stunden, Minuten und Sekunden haben.

Stunden sind dann halt etwas wie die gespeicherten Sekunden / 3600 beim Getter und der Setter der Stunden würde halt den Wert setzen auf Stunden * 3600 + Wert % 3600

Aber diese Begriffe selbst kenne ich nicht, so dass dies nur einfach etwas ist, das ich aus der Fragestellung etwas abgeleitet habe.
 

Blut1Bart

Bekanntes Mitglied
Beispiel:
Java:
import java.util.IntSummaryStatistics;
import java.util.List;

public class Bilanz {
    private List<Integer> einnahmen = List.of(5000, 6000, 4000);
    private List<Integer> ausgaben = List.of(3500, 5500, 1000);

    public int getBilanz() {
        return einnahmen.stream().mapToInt(Integer::intValue).sum() - ausgaben.stream().mapToInt(Integer::intValue).sum();
    }

    public IntSummaryStatistics getEinnahmenStats() {
        return einnahmen.stream().mapToInt(Integer::intValue).summaryStatistics();
    }

    public IntSummaryStatistics getAusgabenStats() {
        return ausgaben.stream().mapToInt(Integer::intValue).summaryStatistics();
    }

    public static void main(String[] args) {
        Bilanz bilanz = new Bilanz();
        System.out.println("bilanz = " + bilanz.getBilanz());
        System.out.println("einnahmen = " + bilanz.getEinnahmenStats());
        System.out.println("ausgaben = " + bilanz.getAusgabenStats());
    }
}

getBilanz, getEinnahmenStats, getAusgabenStats sind nur über Getter simulierte, nicht-materialisierte Attribute...

einnahmen und ausgaben hingegen sind materialisierte Attribute. :)

Anderes Beispiel, ein Auto hat Räder, Motor und ein Lenkrad, und außerdem das nicht-materialisierte Attribut Geschwindigkeit. :)
 

Neumi5694

Top Contributor
getBilanz, getEinnahmenStats, getAusgabenStats sind nur über Getter simulierte, nicht-materialisierte Attribute...

einnahmen und ausgaben hingegen sind materialisierte Attribute. :)

Anderes Beispiel, ein Auto hat Räder, Motor und ein Lenkrad, und außerdem das nicht-materialisierte Attribut Geschwindigkeit. :)
So ähnlich hätt ich's auch verstanden, nur bin ich bei der Geschwindigkeit nicht der Meinung, dass die in diese Kategorie fällt, denn diese ist tatsächlich eine Eigenschaft des Autos, lässt sich nicht aus anderen Eigenschaften berechnen oder ableiten. Nur der Spezialfall AnzahlRäder == 0 würde Geschwindigkeit = 0 ergeben, falls das Auto sich nicht gerade in der Luft oder auf rutschigem Untergrund befindet.
 

Blut1Bart

Bekanntes Mitglied
nur bin ich bei der Geschwindigkeit nicht der Meinung, dass die in diese Kategorie fällt,
Weg / Zeit = Geschwindigkeit :)

aber es stimmt allerdings, es kommt auf die Attribute (Eigenschaften) des Autos an. Ich muss allerdings betonen, dass auch mir der Begriff materialisiert neu ist und ich darum Vermutungen anstellen muss... bei Datenbanken gäbe es "eindeutige, zusammengesetzte und künstliche" Werte, vielleicht ist das hierbei so ähnlich. Aber nur vielleicht. :D
 

Neumi5694

Top Contributor
Weg / Zeit = Geschwindigkeit :)

aber es stimmt allerdings, es kommt auf die Attribute (Eigenschaften) des Autos an. Ich muss allerdings betonen, dass auch mir der Begriff materialisiert neu ist und ich darum Vermutungen anstellen muss... bei Datenbanken gäbe es "eindeutige, zusammengesetzte und künstliche" Werte, vielleicht ist das hierbei so ähnlich. Aber nur vielleicht. :D
Dann müssten wir aber beides ins Auto speichern, was mir bei der Zeit wenig sinnvoll erscheint ;). Auf welchem Weg sich das Auto befindet, ist allerdings eine brauchbare Eigenschaft.
Ich denke, es geht tatsächlich um diese "künstlichen" Werte. Ein Kreis kann die Eigenschaft Radius und Durchmesser haben, von der aber nur eine gespeichert werden muss (und sollte). Die jeweils andere wird beim Abfragen oder Setzen umgerechnet.

@Oneixee5 Ich kenn das eigentlich nur im Zusammenhang mit Serialisierung, aber möglich wär's.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
D Methoden Wie können Klassen auf Klassenfremde Objekte zugreifen? Java Basics - Anfänger-Themen 7
M Warum können innere Klassen keine static-members haben? Java Basics - Anfänger-Themen 2
frau-u Können Interfaces von Klassen erben? Java Basics - Anfänger-Themen 3
J 2 listen vergleichen, die auch null Elemente haben können ! Java Basics - Anfänger-Themen 9
frager2345 Singleton-Muster Java ->Nur eine Instanz einer Klasse erzeugen können Java Basics - Anfänger-Themen 45
C Methoden können nicht auf Instanzvariable der Klasse zugreifen Java Basics - Anfänger-Themen 3
B Warum können super() und this() nicht gemeinsam in einem Konstruktor verwendet werden? Java Basics - Anfänger-Themen 7
D Können if Anweisungen aufeinander aufbauen? Java Basics - Anfänger-Themen 1
Elaurin Erste Schritte effektiv lernen mit Java umgehen zu können? Java Basics - Anfänger-Themen 5
N Sicherheitsnummer erstellen und verändern können Java Basics - Anfänger-Themen 1
J Hinzufügen eines Objekts in eine Liste, um später dann nochmal auf das Objekt zugreifen zu können Java Basics - Anfänger-Themen 8
JokerBlacky Klassen Klasse Queue Klasse mit Attributen anhängen und auslesen können Java Basics - Anfänger-Themen 4
R warum kann System.out.println(..) etwas, was Swing-Elemente Nicht können ? Java Basics - Anfänger-Themen 11
H Methoden können nicht verwendet werden Java Basics - Anfänger-Themen 10
R Eine Arrayliste in XML abspeichern und laden können Java Basics - Anfänger-Themen 7
W Wie kann man diesen Code in einen Code umwandeln, der folgendes können sollte? Java Basics - Anfänger-Themen 1
S Methoden Linked List Methoden können nicht aufgerufen werden Java Basics - Anfänger-Themen 1
J Interface Bubblesort soll Arrays beliebiger Referenztypen sortieren können. Java Basics - Anfänger-Themen 5
B Anwender soll mathematische Funktion eingeben können, Einfachster Fnktionsplotter Java Basics - Anfänger-Themen 4
J Können mehere Threads parallel eine Datei lesen? Java Basics - Anfänger-Themen 4
X Muss man Java können um Jython nutzen zu können? Java Basics - Anfänger-Themen 14
K mehrer applets sollen sich gegenseitig verständigen können Java Basics - Anfänger-Themen 3
F Können Klasse auch Werte liefern? Java Basics - Anfänger-Themen 3
2 Alle Werte die mit n Würfeln mit m Seiten geworfen werden können in ein n Dimensionales Array Java Basics - Anfänger-Themen 15
E Statische Member können nicht vererbt werden? Java Basics - Anfänger-Themen 10
B OOP Objekt klonen (Grundzustand), um in Editor "Abbrechen" zu können Java Basics - Anfänger-Themen 4
K Txt statt in TextArea in JTable einlesen und bearbeiten können Java Basics - Anfänger-Themen 4
G ein programm nicht mehrmals starten können Java Basics - Anfänger-Themen 6
R Klassenattribut nur 1 mal setzen können Java Basics - Anfänger-Themen 7
T können überschriebene methoden andere zugruffsrechte besitze Java Basics - Anfänger-Themen 2
R Buttons können sich bewegen und JButtons nicht? Java Basics - Anfänger-Themen 5
J Methodenaufrufe abstrakte Klassen, Interfaces Java Basics - Anfänger-Themen 17
M Abstrakte Klassen - Notation Java Basics - Anfänger-Themen 9
Detlef Bosau Nachladen von Klassen zur Laufzeit Java Basics - Anfänger-Themen 24
M Anonyme Klassen - Warum wird in der Konsole nichts ausgegeben? Java Basics - Anfänger-Themen 1
MoxMorris Einige Methoden aus verschiedenen Klassen nacheinander auszuführen läuft seltsam Java Basics - Anfänger-Themen 2
I Klassen von einem package laden, Statisches Feld auslesen und Objekt erstellen Java Basics - Anfänger-Themen 8
I 2 verschiedene Klassen mit gleichen Property vergleichen Java Basics - Anfänger-Themen 13
C Array von Klassen Java Basics - Anfänger-Themen 2
monsterherz 2 Klassen daher Probs mit dem Dateinamen Java Basics - Anfänger-Themen 9
C Kommunikation zwischen 2 Klassen Java Basics - Anfänger-Themen 9
I JPA Query für mehrere Klassen Java Basics - Anfänger-Themen 3
I @Entity Klassen, Service Beans etc. aus einem Share Projekt beziehen? Java Basics - Anfänger-Themen 26
S IntelliJ geht alle Klassen durch Java Basics - Anfänger-Themen 9
I Gleiche Klassen und Methoden in unterschiedlichen Projekten nutzen Java Basics - Anfänger-Themen 2
T variablen klassen übergreifend Java Basics - Anfänger-Themen 12
N Klassen Methoden anderer Klassen aufrufen Java Basics - Anfänger-Themen 4
D Klassen Klassen Kommunikation Java Basics - Anfänger-Themen 12
Encera Auf Objekte aus anderer Klassen zugreifen Java Basics - Anfänger-Themen 20
berserkerdq2 Zwei Klassen Erben von der Klasse A, die eine Klasse kann ich an Methoden übergeben, die als Parameter A haben, die andere nicht? Java Basics - Anfänger-Themen 3
M Andere Methoden in anderen Klassen aufrufen Java Basics - Anfänger-Themen 11
L Methoden in anderen Klassen nutzen Java Basics - Anfänger-Themen 6
D Klassen und Vererbung Java Basics - Anfänger-Themen 2
L Best Practice Annotierte Klassen im Classpath herausfinden Java Basics - Anfänger-Themen 1
P Mit dem Scanner Klassen aufrufen Java Basics - Anfänger-Themen 3
O Klassen Zusammenspiel zwischen 2 Klassen Java Basics - Anfänger-Themen 1
K Zweite Ausgabe von vererbten Klassen Java Basics - Anfänger-Themen 3
Speedrunner klassen aufrufen Java Basics - Anfänger-Themen 41
M Log4J (v2) nachträglich in allen Klassen hinzufügen Java Basics - Anfänger-Themen 9
D importieren eigener Klassen Java Basics - Anfänger-Themen 12
W Wo ist der Wurm in meinem Grundverständnis von Klassen? Java Basics - Anfänger-Themen 22
S Daten/Klassen/Packages richtig updaten!? Java Basics - Anfänger-Themen 2
alice98 Erste Schritte Liste erstellen ohne vorgefertigte Klassen Java Basics - Anfänger-Themen 1
C Archiv für eigene Klassen Java Basics - Anfänger-Themen 9
S Objekte von zwei klassen in zwei verschiedene Textdateien schreiben Java Basics - Anfänger-Themen 5
elsaaaaaa Wochentag als String ausgeben mit JDK Klassen Java Basics - Anfänger-Themen 6
CptK Generics: Klassen die Interface implementieren, aber selbst nicht das Interface sind Java Basics - Anfänger-Themen 8
Z Mehtode bei Start des Programms ausführen (Klassen übergreifend) Java Basics - Anfänger-Themen 12
J Allgemeines Problem mit Klassen Java Basics - Anfänger-Themen 5
TimoN11 Java Klassen Global einbinden Java Basics - Anfänger-Themen 1
B Inventar als einzelne Klassen anlegen? Java Basics - Anfänger-Themen 12
G Java Klassen und Instanzmethoden Java Basics - Anfänger-Themen 15
C Kommunikation zwischen 2 Klassen Java Basics - Anfänger-Themen 3
T Vererbung Verschiedene Attribute für vererbte Klassen Java Basics - Anfänger-Themen 4
S Klassen instanziieren und verwenden von Getter und Setter Java Basics - Anfänger-Themen 4
B Variablen Variablen übertragen ohne Klassen Java Basics - Anfänger-Themen 5
C Fernseher-Aufgabe (Methoden, Klassen und Objekte) Java Basics - Anfänger-Themen 63
H Methoden in großen Klassen gruppieren oder auslagern? Java Basics - Anfänger-Themen 10
G Abstrakte Klassen Java Basics - Anfänger-Themen 11
Y Klassen Klassen und Objekte Java Basics - Anfänger-Themen 3
Y Klassen Klassen und Objekte mit set und get Java Basics - Anfänger-Themen 0
A Generischen Klassen Java Basics - Anfänger-Themen 8
A Vererbung Klassen im Bezug auf Auto´s Java Basics - Anfänger-Themen 18
A Generische Klassen/Interface Java Basics - Anfänger-Themen 1
A Klassen Vererbung und zusätzliche Unterklassen Java Basics - Anfänger-Themen 23
J 2 klassen benutzen Java Basics - Anfänger-Themen 5
A Klassen und methoden Java Basics - Anfänger-Themen 15
A Bankweverwaltung mit Klassen und Methoden Java Basics - Anfänger-Themen 14
J Klassen Problem Java Basics - Anfänger-Themen 8
I Java Klassen "Graphics" und "MouseEvent" kombinieren Java Basics - Anfänger-Themen 7
I Klassen als Datentyp nutzen? Java Basics - Anfänger-Themen 11
M Aufsplitten von Methoden in andere Klassen Java Basics - Anfänger-Themen 2
M (Sehr großes Problem) Listen als static in anderen Klassen verwendet Java Basics - Anfänger-Themen 12
C Klassen objektorientiert aufteilen Java Basics - Anfänger-Themen 6
hello_autumn Klassen Anzahl sowie die Anzahl der Junit Tests ermitteln? Java Basics - Anfänger-Themen 8
A Auf Eigenschaften von Objekten anderer Klassen zugreifen Java Basics - Anfänger-Themen 5
F Klassen und Pakete Projektübergreifend (Eclipse) Java Basics - Anfänger-Themen 6
V_Fynn03 Klassen Überweisungen tätigen und einzahlen mit 2 Klassen Java Basics - Anfänger-Themen 1
W Abarbeitungsreihenfolge Anonyme Klassen Java Basics - Anfänger-Themen 2
V_Fynn03 Bruchrechner programmieren (2 Klassen) Java Basics - Anfänger-Themen 9

Ähnliche Java Themen

Neue Themen


Oben