JAVA podanie swojej nazwy do wyświetlenia przez System.out.println(nazwa_obiektu)

JAVA podanie swojej nazwy do wyświetlenia przez System.out.println(nazwa_obiektu)
MH
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 4
0

Witam,

Kopiuj
public class Point {
    double wsp1;
    double wsp2;
    
    Point (double wsp1, double wsp2) {
        this.wsp1 = wsp1;
        this.wsp2 = wsp2;


        String nazwa_klasy = "<Point>{(" + wsp1  + "," + wsp2 + ")}";

    }
    
    void Area () {
        System.out.println(" Area=" + 0);
    }
    void Len () {
        System.out.println(" Len=" + 0);
    }
    void Count () {
        System.out.println(" Count=" + 1);
    }
}
Kopiuj
public class UJZad1 {

    public static void main(String[] args) {
        Point p = new Point(12,11);
  
      System.out.println(p);

    }
}

zależy mi aby zamiast:
ujzad1.Point@190d11

System.out.println(p) wyświetlił wartość nazwa_klasy czyli:
<Point>{(12.0,11.0)}

Reasumując jak oszukać System.out.println(p)?

Shalom
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Space: the final frontier
  • Postów: 26433
0

Oszukać :D :D przeładuj metodę toString() w klasie Punkt...

MH
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 4
0
Shalom napisał(a)

Oszukać :D :D przeładuj metodę toString() w klasie Punkt...

ok, udało się, wielkie dzięki - oto wynikowa klasa:

Kopiuj
Point (double wsp1, double wsp2) {
        this.wsp1 = wsp1;
        this.wsp2 = wsp2;
    }
    
    double Area () {
    
    return 0;}
    
    
    double Len () {
        
    return 0;}

    
    double Count () {
        
    return 1;}
    
    @Override
    public String toString() {
    return "<Point>{(" + wsp1  + "," + wsp2 + ")}";}
    
}

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.