eigenschaften von aufrufemden object verwenden ohne konstruktorentnahme?

2 Antworten

Mir ist nicht ganz klar, was du vor hast. So etwas?

public int sum() {
  return x + y;
}

Und dann:

Ball b = new Ball();
b.x = 5;
b.y = 1;

Ball b2 = new Ball();
b2.x = 3;
b2.y = 10;

int sum = b.sum(); // 6
int sum2 = b2.sum(); // 13

Eigenschaft vom Aufrufendem Objekt?

Dazu müsste das Aufgerufene Objekt die Aufrufende Klasse kennen. Anderenfalls müssten die Eigenschaften an die Aufgerufene Methode übergeben werden, in Form von Parametern.

Ich hab ein Problem mit einem C# Windows Forms rechner (Lerne grade noch)?

Also ich habe das Problem das ich für die Tastenfelder Keine normalen Textbuttons benutze sondern schöne Imagebuttons benutzen will. Daher kann ich die Ziffer ja nicht einfach aus der Box übertragen... Das Problem ist aber noch recht easy gewesen... Nur wie bekomme ich das jetzt mit +-*/ und = auf die Reihe? Danke für alle Antworten(Auf Youtube finde ich nur Tutorials die das mit dem direkten Übertragen der Textbuttons machen). Hier mein Code: private void bunifuImageButton1_Click(object sender, EventArgs e)//1 { Rechenfeld.Text = Rechenfeld.Text + "1"; }

    private void Rechenfeld_OnValueChanged(object sender, EventArgs e)//Ausgabe
    {

    }

    private void bunifuImageButton2_Click_1(object sender, EventArgs e)//2
    {
        Rechenfeld.Text = Rechenfeld.Text + "2";
    }

    private void bunifuImageButton3_Click(object sender, EventArgs e)//3
    {
        Rechenfeld.Text = Rechenfeld.Text + "3";
    }

    private void bunifuImageButton5_Click(object sender, EventArgs e)//4
    {
        Rechenfeld.Text = Rechenfeld.Text + "4";
    }

    private void bunifuImageButton6_Click(object sender, EventArgs e)//5
    {
        Rechenfeld.Text = Rechenfeld.Text + "5";
    }

    private void bunifuImageButton7_Click(object sender, EventArgs e)//6
    {
        Rechenfeld.Text = Rechenfeld.Text + "6";
    }

    private void bunifuImageButton9_Click(object sender, EventArgs e)//7
    {
        Rechenfeld.Text = Rechenfeld.Text + "7";
    }

    private void bunifuImageButton10_Click(object sender, EventArgs e)//8
    {
        Rechenfeld.Text = Rechenfeld.Text + "8";
    }

    private void bunifuImageButton11_Click(object sender, EventArgs e)//9
    {
        Rechenfeld.Text = Rechenfeld.Text + "9";
    }

    private void bunifuImageButton13_Click(object sender, EventArgs e)//0
    {
        Rechenfeld.Text = Rechenfeld.Text + "0";
    }

    private void bunifuImageButton16_Click(object sender, EventArgs e)//+
    {

    }
    private void bunifuImageButton15_Click(object sender, EventArgs e)//=
    {
        
    }

    private void bunifuImageButton20_Click(object sender, EventArgs e)//Löschen
    {
        Rechenfeld.Text= ("");
    }

    private void bunifuImageButton8_Click(object sender, EventArgs e)//*
    {

    }

    private void bunifuImageButton12_Click(object sender, EventArgs e)//-
    {

    }

    private void bunifuImageButton4_Click(object sender, EventArgs e)//geteilt
    {

    }

    private void bunifuImageButton14_Click(object sender, EventArgs e)//,
    {

    }

    private void bunifuImageButton19_Click(object sender, EventArgs e)//Letzte Zahl löschen

Konnte leider nicht alles einfügen hoffe ihr versteht mein Problem..

Gruß und Danke

...zur Frage

Wie kann ich das programmiertechnisch in BlueJ mit Java umsetzen?

Hallo liebe Community,

ich habe die Aufgabe bekommen, in BlueJ ein Programm zu schreiben, dass Steuern berechnet. Falls der zu versteuernde Betrag unter 5000€ liegt, sind keine Steuern zu zahlen, ab 5000€ sind 10% Steuern zu zahlen, ab 20.000€ sind 15% zu zahlen, bei 50.000€ 20%. Der Benutzer des Programmes soll dann den zu versteuernden Betrag eingeben können und erhält als Ausgabe den Steuersatz und die zu zahlenden Steuern.

Ich habe bis jetzt den Konstruktor mit den Standardwerten initialisiert und die Methode, welche es ermöglicht, die Steuern einzugeben, geschrieben. Ich komme jetzt jedoch nicht bei der Methode weiter, welche den Steuerbetrag berechnet und ausgibt. Höchstwahrscheinlich muss das dann ja in Form einer If-Anweisung erfolgen, aber wie genau? Bin absoluter Anfänger, was die Programmierung angeht und bin deshalb über jeden Rat froh!

Hier zur besseren Nachvollziehbarkeit der bisherige Quelltext:

/** * Ein Programm, das die zu zahlende Steuer abhängig von einem Betrag berechnet und zusammen mit dem * entsprechenen Steuersatz anzeigt. * * @author: * @version: 1 */ public class Steuer { // Instanzvariablen - ersetzen Sie das folgende Beispiel mit Ihren Variablen private double Kapital; private double Steuersatz; private double Steuern;

/**
 * Konstruktor für Objekte der Klasse Steuer
 */
public Steuer()
{
    // Instanzvariable initialisieren
    Kapital = 0;
    Steuersatz = 0;
    Steuern = 0;
}

/**
 * Gib das Kapital an.
 */ 
public void gibKapital (double neuesKapital)
{
    // tragen Sie hier den Code ein
    Kapital = neuesKapital;

}

/** 
 * Gib den Steuersatz an, der dem eingegebenen Kapital entspricht.
 */
public int gibSteuersatz (double Steuersatz, double neuesKapital)

{
    if (neuesKapital <= 5000())
    {
        System.out.println("Sie müssen keine Steuern zahlen. Herzlichen Glückwunsch!");
    }
    
...zur Frage

[JAVA] Auf eine Methode in einer anderen Klasse zugreifen?

import static java.lang.System.out;
import java.util.Scanner;

public class Datentypen {
@SuppressWarnings("unused")
public static void main(String[] args){
    
    Scanner  keyboard = new Scanner(System.in);
    
    out.println("In Java gibt es viele verschiedene Datentypen. Da ich Ihnen die Unübersichtlichkeit sparen möchte,");
    out.println("habe ich dieses Programm geschrieben. Dieses Programm enthält jeweils ein Beispiel zu je einem Datentypen.");
    out.println("Also, worauf warten Sie? Suchen Sie sich einen Datentypen aus!");
    out.println();
    out.println("Boolean        Char");
    out.println("Byte       Short");
    out.println("Int        Long");
    out.println("Float      Double");
    
    String datentypen  = keyboard.next();
            
    switch(datentypen){
    case "Boolean":
        booleantyp();              //Fehler ist hier!
    }
    }


}

Zweite Klasse:

public class DatentypenMethoden {
public static void maint(String[] args){
    
}

public void booleantyp(){
    
}
}

Wie greife ich jetzt von der Klasse Datentypen auf die Methode "booleantyp()"?

...zur Frage

Wie sieht die Punktnotation in Java aus oder wie kann ich auf auf andere Klassen zugreifen?

Wie kann ich in der Klasse Telefon die Methoden aus der Klasse Telefonbuch verwenden ? Wenn ich es mit Punktnotation versuche wie z.B.

public void eintrag_hinzufuegen(String name)
{
    Telefonbuch.hinzufuegen(name);
}

, kommt die Fehlermeldung : non static method cannot be referenced from a static context

1)

import java.util.ArrayList;
public class Telefon
{
protected ArrayList <Telefonbuch> telefonbuch;
protected boolean eingeschaltet;
        
        public Telefon()
    {
        // initialise instance variables
        telefonbuch = new ArrayList <Telefonbuch>();
    }
    
    public void anrufen (String name)
    {
    }
    
    public void einschalten()
    {
        eingeschaltet = true;
    }
    
    public void telefonbuch_uebersicht()
    {
        
    }
    
    public void eintrag_hinzufuegen(String name)
    {
    }
    
    public void eintrag_entfernen(String name)
    {
    }
    
    public boolean eintrag_suchen(String name)
    {
    }
}

2)

import java.util.Arrays;

/**
 * Write a description of class Telefonbuch here.
 * 
 * @author (your name) 
 * @version (a version number or a date)
 */
public class Telefonbuch
{
    // instance variables - replace the example below with your own
    private int anzahl_eintrag;
    private int kapazitaet;
    private String[] name_liste;
    protected boolean gefunden;

    /**
     * Constructor for objects of class Telefonbuch
     */
    public Telefonbuch()
    {
        // initialise instance variables
        String [] name_liste = new String[kapazitaet];
        gefunden = false;
    }
    
    public void set_kapazitaet(int x)
    {
        kapazitaet = x;
    }
    
    public void telefonbuch_uebersicht()
    {
        for(int i=0; i < name_liste.length; i++)
        {
        System.out.println(name_liste[i]);
        }
    }
    
    public void hinzufuegen(String name)
    {
        
    }
    
    public void entfernen(String name)
    {
    }
    
    public boolean suchen(String name)
    {
        for(int i=0; i < name_liste.length; i++)
        {
         if(name_liste[i].equals(name))
         {
         gefunden = true;
         }
         else
         {
         //Abbruch
         }
        }
        return gefunden;
    }
}

...zur Frage

Wie kann ich in BlueJ einen String, den ich beim erstellen des Objektes festgelegt habe wieder ändern?

Habe es schon mit der set-Methode probiert, jedoch weiß ich nicht genau wie ich das machen soll. Fogendes habe ich mir gedacht:

private String x //x ist zuerst ""

public void setX(String neu) { neu = x; }

wenn ich diese methode ausführe ändert sich aber nichts, hat jemand einen rat?

Danke im Voraus, LG

...zur Frage

Java: Methodenaufruf in einem Object-Array?

Guten Tag,

ich habe ein Spielfeld, welches durch ein Object-Array dargestellt wird. Der Spieler wird durch ein P dargestellt und hat am Anfang die Positionen x und y, welche ich beim Einlesen mit BufferedReader bestimmt habe.

Beispielcode:

abstract class Area {
    public boolean canMove();
}



class A extends Area {
    public boolean canMove() {...}
}



class B extends Area implements InterF {
    public boolean canMove() {...}
    public void trigger() {...}
}



interface InterF {
    public void trigger();
}


class Map {
    Area[][] area;
    ... 
    private void build {
         for (int y = 0; y < area.length; y++){
            for (int x = 0; x < area[y].length; x++) {
                 switch (area[y][x]) {
                    case A: 
                        area[y][x] = new A(); 
                        break;
                    case B: 
                        area[y][x] = new B(); 
                        break;
            }
        }
}

Wenn ich jetzt meinen Spieler in dem Array bewege, wie kann ich wissen, welches Object sich in dem Array-Feld [y][x] befindet (A oder B) und wie kann ich dann die Methode canMove() ausführen und ggf trigger() aus B?

...zur Frage

Was möchtest Du wissen?