Java:在另一类中使用从类中的对象

  • 本文关键字:对象 一类 Java java class
  • 更新时间 :
  • 英文 :


我有两个不同的文件。在下面的文件中,我创建了一个具有属性的新对象,然后创建了一种检索该属性的方法。

public class Journey
{
    public double singleCost;
    public void setSingleCost(double cost) {
        singleCost = cost;
    }
    public double getSingleCost() {
        return singleCost;
    }
    public static void main (String[] args) {
        Journey leicester_loughborough = new Journey();
        leicester_loughborough.setSingleCost(2.5);
        Journey leicester_nottingham = new Journey();
        leicester_nottingham.setSingleCost(3.5);
    }
}

在一个单独的文件中,我想打印出该对象的属性。我不确定该怎么做。以下似乎不起作用。

public class JourneyMethods
{    
    public static void main (String[] args) {
        System.out.println(leicester_loughborough.getSingleCost());
    }
}

我感谢任何帮助,谢谢。

您将其视为主要方法。

您的JourneyMethods主要方法对Journey一无所知,除非您告诉它。如果您创建对Journey的引用。

JourneyMethods将能够与Journey实例交互

您的类对象:

public class Journey
{
    public double singleCost;
    public void setSingleCost(double cost) {
        singleCost = cost;
    }
    public double getSingleCost() {
        return singleCost;
    }
}

您的主要课程:

public class JourneyMethods
{    
    public static void main (String[] args) {
        Journey Leicester_loughborough = new Journey();
        leicester_loughborough.setSingleCost(2.5);
        Journey leicester_nottingham = new Journey();
        leicester_nottingham.setSingleCost(3.5);
        System.out.println(leicester_loughborough.getSingleCost());
    }
}

这是Java的工作原理,我认为您与C(.H和.C文件(混淆了在您的旅程类中拥有main((函数是没有意义的,您可以从代码中的任何地方实例化对象,因此将其放在main((函数中:(

在Java中,您通常想将方法放在对象类中。

您只需创建一个getter(( - 要在具有它的类中具有的属性的方法(在您的案例roway.clours.class中(。这样:

public double getSingleCost() {
    return singleCost;
}

然后,您可以通过从所拥有的对象键入调用getsinglecost((来获取属性。这样:

double cost = leicester_loughborough.getSingleCost();

请注意,这确实是基本的东西,您可能想先阅读更多Java教程。

哦,您的程序只能具有一个main()方法作为入口点。(有理由有多个,但这些理由是非常特定的(。如果您以OP的方式运行程序,则地址空间以及两个应用程序的执行将彼此分离,并且您没有访问其他应用程序中包含的对象的方法,有一些序列化的方式,但这些是更高级的主题(。在同一程序中包含您的类/对象。

编辑:修复OP的代码以按预期工作:

public class Journey
{
    public double singleCost;
    public void setSingleCost(double cost) {
        singleCost = cost;
    }
    public double getSingleCost() {
        return singleCost;
    }
}

journeymethods:

public class JourneyMethods
{    
    public static void main (String[] args) {
        Journey leicester_loughborough = new Journey();
        leicester_loughborough.setSingleCost(3.5);
        System.out.println(leicester_loughborough.getSingleCost());
    }
}

您需要在旅行节类中创建两个旅程对象,以便您参考它们。另外,您应该将"文件"称为类,因为"文件"通常意味着文件系统上的文件,而不是代表Java类的文件。那使我有些困惑。

要访问对象属性,您必须在外部类中进行对象,并使用getter和setter方法来获取对象的值。

public class Journey{
public double singleCost;
public void setSingleCost(double cost) {
    singleCost = cost;
}
public double getSingleCost() {
    return singleCost;
}  

}

public class JourneyMethods{    
public static void main (String[] args) {
    Journey Leicester_loughborough = new Journey();
    leicester_loughborough.setSingleCost(2.5);
    Journey leicester_nottingham = new Journey();
    leicester_nottingham.setSingleCost(3.5);
    System.out.println(leicester_loughborough.getSingleCost());
}

}

最新更新