klassen verbinden

  • Themenstarter Themenstarter coolerouny
  • Beginndatum Beginndatum
C

coolerouny

kann mit jemand sagen wie ich zwie klassen verbinden kann?

also dass ich hier "getDistance" in einer anderen klasse hab
Code:
import java.awt.*;

public class Distance
{
	Point A = new Point(100,100);
	Point B = new Point(200,200);
	
	public int getDistance(int x1,int y1, int x2, int y2)
	{
		//c² = a² + b²
		int c;
		
		c = (int)( Math.sqrt( Math.pow((x2-x1),2) + Math.pow((y2-y1),2)) );
	//	c =        wurzel aus |--------a²-------| + |---------b²-------|
		
		return c;
	}
	
	public static void main(String args[])
	{
		new Distance();
	}
	
	Distance()
	{
		int dis = getDistance(A.x,A.y,B.x,B.y); //berechnen
		System.out.println("der abstand ist " +  dis);
	}
}

mfg
coolerouny
 
Du gehts einfach in die andere Klasse und bildest mit Name der Klasse eine Instanz und kannst du dann auf alle Methoden anderen Klasse zugreifen.Bedingung: Klassen müssen sich in gleichen paket befinden.
 
Hallo!

Schau mal hier:
Code:
/**
 * 
 */
package de.tutorials;

import java.awt.Point;

/**
 * @author Tom
 */
public class DistanceCalculator {

	public static void main(String[] args) {
		Point p0 = new Point(0, 0);
		Point p1 = new Point(100, 100);
		System.out.println(new DistanceCalculator().calculateDistance(p0, p1));
	}

	private double calculateDistance(Point p0, Point p1) {
		return p0.distance(p1);
	}
}

Gruß Tom
 
he?

is dann in der anderen klasse die berechnung?

kenn mich da jetzt irgendwie überhaupst nicht aus @-) :confused:
 
10 min später...

ich habs geschafft !

aber Tom, gibt es getDistance oder so was von haus aus schon?

aber ich habs jetzt so gemacht

in der klasse Distance
Code:
import java.awt.*;

public class Distance
{
	Point A = new Point(100,100);
	Point B = new Point(200,200);
	
	private Berechnen calculate;
	
	public static void main(String args[])
	{
		new Distance();
	}
	
	Distance()
	{
		calculate = new Berechnen();
		int dis = calculate.getDistance(A.x,A.y,B.x,B.y); //berechnen
		System.out.println("der abstand ist " +  dis);
	}
}

und in der klasse Berechnen
Code:
public class Berechnen
{
	public int getDistance(int x1,int y1, int x2, int y2)
	{
		//c² = a² + b²
		int c;
		
		c = (int)( Math.sqrt( Math.pow((x2-x1),2) + Math.pow((y2-y1),2)) );
	//	c =        wurzel aus |--------a²-------| + |---------b²-------|
		
		System.out.println("muhaha ich bin in der anderen klasse");
		return c;
		
	}
}

mfg
coolerouny
 
Hallo!

Ja, in der Klasse Point sind mehrere getDistance(,...) Methoden Überladungen zu finden.
Ansonsten hast du dein Problem prima selbst gelöst :)

Gruß Tom
 
gut :D

danke

ps:
3001 beiträge... respeckt :)
 
Zuletzt bearbeitet von einem Moderator:
Zurück