Weil "A" anscheinend nicht existiert. Es ist ein FILEReader. du gibst im Konstrukter eines FILEReaders einen Pfad zu einer Datei an.

...zur Antwort

Ja, ich hab einen Microchip, den ich Leuten in den Nacken einführen kann. Damit kann ich die Menschen dann mit einer Fernbedienung fernsteuern.

...zur Antwort
C Programmieren - Ist der Wert einer Zeigervariable immer auf dem aktuellem stand der zugeordneten Variable?

Hallo liebe Community;

zur Zeit lerne ich C-Programmieren und bin dabei im Kapitel Zeiger angelangt. Dabei habe ich eine Aufgabe vor mir liegen, in welcher man per hand die Werte ausrechnen soll. Dabei habe ich einige Fragen. Die Aufgabe sieht so aus:

int a=2, b=5, c=&a, d=&b;

a = *c * *d; ---------> a=10

*d -= 3; --------------> b=2, *d=2

b = a * b; ------------> b=20

c = d; -----------------> *c=20

b = 7; -----------------> b=7

a = *c + *d; ---------> a=14

Deklaration verstehe ich schon mal. Auch die erste Funktion ist noch plausibel.

Nun meine erste Frage bei *d -=3.

Der Lösung zufolge ändert sich, sobald sich der Zeiger ändert auch die Variable. (Richtig?)

Nächste Frage entsteht bei c = d.

Hier wird ja c = d und nicht *c = *d geschrieben. Macht das einen Unterschied? Eigentlich dürfte es bei dem ergebnis *c = 20 keinen Unterschied machen.

Letzte Frage, ist bei a = *c + *d;

Ich komme einfach nicht darauf welche Werte genommen wurden, damit man auf a = 14 kommt. Bis jetzt gehe ich davon aus, dass *c=20 ist. Allerdings übersteigt es ja jetzt schon die a=14. Auf welche Werte greifen die Zeiger zu? z.B. bei *d. In der Zeile darüber wurde b der Wert 7 zugeordnet. Ist es also so, dass die Zeiger immer den aktuellen Wert von der jeweiligen Variable zeigen oder zeigen sie einen Wert der Variable an, der irgendwo schon eher im Programmabschnitt festgelegt wurde?

...zum Beitrag

Das hängt vom Wetter in Nigeria ab.

...zur Antwort

[...]und die Fähigkeit mit Java zu programmieren[...]

Dann wäre das ja kein Problem für dich.

...zur Antwort

Bei der Methode 

readObject();

vom ObjectInputStream muss das gelesene Objekt nur gecastet werden.

also so:

HashMap map = (HashMap) ois.readObject();

Du solltest übrigens auf deine Variablennamen achten.

ObjectInputStream ois = new ObjectInputStream(new FileInputStream(new File("File.dat")));
HashMap mp = (HashMap)ois.readObject();

Anonyme Objekte wären angebrachter.

...zur Antwort
Interface im UML-Diagramm// A

Eine Vaterklasse implementiert ein Interface, und die Kinderklasse überschreibt das, wie soll ich im UML die Beziehung darstellen? Soll ich nur die Diag. vom Vater und Inter einmal verbinden oder separat von Kinder und Inter auch einmal?

Bitte schau mal die Code unten:

class StarShip{ String shipName = "UFO"; public StarShip(){ System.out.println("Buiding Starship:"+ shipName); } protected StarShip(String shipName){ this.shipName = shipName; } }

interface WarpDrive{void goToWarp();}

class FederationShip extends StarShip implements WarpDrive{ public String captainsName = "Picard"; boolean hullIntact; protected int phaserBanks; private float photonTorpedos; public void goToWarp(){ System.out.println("Warp Factor 8"); } } class GalaxyClass extends FederationShip{ public void goToWarp(){ System.out.println("Make it so!"); } public String toString(){ return this.shipName; } }

class CostitutionClass extends FederationShip{ String costiName; static String captainsName = "Kirk"; public CostitutionClass(String shipName){ costiName = shipName; System.out.println("Building " + shipName); } public String toString(){ return costiName; } }

public class F14A10ObjekterzeugungMitVererbungStarShipSimulation { private static StarShip[] ncc_1701; private static int a = 0; static int d = 3; public static void main (String[] args){ ncc_1701 = new StarShip[4]; ncc_1701[a] = new CostitutionClass("Enterprise"); ncc_1701[d] = new GalaxyClass(); System.out.println("Space race between: " + ncc_1701[a] + " and " + ncc_1701[d]); ((FederationShip) ncc_1701[a] ).goToWarp(); ((FederationShip) ncc_1701[d] ).goToWarp(); //Casten spielt keine Rolle fuer Methoden, sondern nur Variablen System.out.println(((FederationShip) ncc_1701[a]).captainsName + " ist the better Captain!");

Fragen: die main-Methode hat Instanzen jeweils von StarShip CostitutionClass und GalaxyClass. Sind die Beziehungen Aggregat oder Komposition? Soll ich noch was darstellen über die aufgerufene Methoden?

Danke im Voraus

...zum Beitrag

Code formatieren.

Wenn eine Klasse in UML ein Interface implementiert, brauchen Subklassen dieses Interface nicht mehr implementieren, dafür ist ja die Vererbung da.

...zur Antwort

ich würde die Anzahl der Tage in einem Array speichern, wobei der Arrayindex der Monat ist.also sowas hier:

int[] tage = new int[] {31,28+istSchaltjahr(jahr)?1:0,31,30 ...}usw


du brauchst vorher natürlich eine Methode istSchaltjahr, die berechnet, ob dein Jahr ein Schaltjahr ist.

...zur Antwort

Speicher dein scanner.next() in eine Variable und du kannst sie dann in der If-Abfrage verwerten.

bspw so:

String decision = scanner.next();

if(decision.equals("Ja"))

{

}else if(decision.equals("Nein"))

{

}

...zur Antwort

vergiss es. 2-Dimensionales "3D" ist absoluter Müll. Man mekrt, dass du keine Ahnung von solchen Algorithmen hast. Such dir ein Framework, dass direkt 3D verwendet, arbeite dich darin ein und mach was draus. Wieso das Rad neu erfinden?

...zur Antwort

Es gibt bereits RSS Reader für ObjectiveC, Java etc. einfach mal googlen.

...zur Antwort

Ein Punkt beschreibt eine Koordinate ganz genaut:

(1,2,3) wäre bspw. ein eindeutiger Punkt im 3-Dimensionalen Raum.

Ein Vektor beschreibt dabei eine Richtung

(2,4,6) wäre beispielsweise ein Vektor im dreidimensionalen Raum. Dabei hat einen Vektor keinen Anfangs- und Endpunkt, sondern ein Pfeil bspw. ist nur ein Repräsentant dieses Vektors.

Sagen wir mal du hast 4 Punkte: P1(0,0) P2(1,1) P3(3,3) P4(4,4)

Diese Punkte sind alle komplett unterschiedlich, jedoch ist der Vektor zwischen P1 und P2 der selbe wie zwischen P3 und P4, nämlich (1,1)

...zur Antwort

Welches Betriebssystem hast du denn?Für Android kann ich AIDE (Android Integrated Development Environment) empfehlen. Kann Konsolenausgaben etc. für richtige Apps brauchst du das Android SDK für deinen Rechner.

...zur Antwort

Das Wort "Container" gibt es in Java nicht, dein Ausbilder sollte sich mal besser ausdrücken. Wenn mit Containern wirklich Collections gemeint sind, macht die Aussage ebenso wenig Sinn, da man eine If-Abfrage mit boolsche Ausdrücken/Variablen füllt und nicht mit beliebigen Variablen.

Wenn du den Inhalt einer Collection füllen sollst und dann den Inhalt abfragen sollst, solltest du das in etwa so machen.

  List<String> list = new ArrayList<>();
  list.add("Idle");
  list.add("Busy");
  list.add("Assigned");
boolean isValidStatus(String line) throws StatusException
{
  for(String status : list)
  {
    if(line.equals(status)) //hier geht auch line.contains(status), wenn deine Zeile den Status enthält und nicht nur den Status allein enthält
    {
      return true;
    }
  }
  throw new StatusException(); //die Zeile enthält keinen Status Idle, Busy oder Assigned;
}
...zur Antwort

Was für ne Liste denn? Java hat das List Interface. Das Interface hat die Methoden get(index); man gibt einen Index an und erhält das object in diesem Index.

...zur Antwort

es gibt keine if-Else schleifen, wie kommt ihr immer auf so einen Schwachsinn? Die Schleife ist dein while(1), das ist im Prinzip eine while(true), d.h. eine Endlosschleife, du wirst aus dieser nie wieder rauskommen.

Aktion1 wird immer wieder ausgeführt. Aktion 2 wird ausgeführt, wenn Kriterium1 zurifft. Wenn Kriterium1 nicht zutrifft, wird Aktion2 NICHT ausgeführt, sondern wenn kriterium2 zutrifft, wird aktion3 ausgeführt. Danach beginnt die Schleife von neuem.

...zur Antwort
frame.getContentPane().removeAll();

sollte alles aus dem Frame löschen, wie man es wieder befüllt, weißt du ja.

...zur Antwort