Java 使用对象调用方法很麻烦
因此,我需要在我的部分家庭作业中这样做: 在Customer类中创建一个名为Java 使用对象调用方法很麻烦,java,object,Java,Object,因此,我需要在我的部分家庭作业中这样做: 在Customer类中创建一个名为hasMoreMoneyThan(Customer c) 如果调用该方法的客户的钱比实际值多,则返回true 客户c,否则应返回false 我希望能为“调用方法的客户”这句话指明正确的方向 这让我很困惑,也没有任何意义,这是我的客户的一个类 以下是必要的代码: public class Customer { private String name; private int age; privat
hasMoreMoneyThan(Customer c)
如果调用该方法的客户的钱比实际值多,则返回true
客户c
,否则应返回false
我希望能为“调用方法的客户”这句话指明正确的方向
这让我很困惑,也没有任何意义,这是我的客户
的一个类
以下是必要的代码:
public class Customer
{
private String name;
private int age;
private float money;
public String getName()
{
return name;
}
public int getAge()
{
return age;
}
public Customer(String n, int a, float m)
{
name = n;
age = a;
money = m;
}
我开始写这个方法:
public boolean hasMoreMoneyThan(Customer c)
{
}
if (currentCustomer.isOlderThan(customerToCompareWith)) {
// the current customer is older
} else {
// the current customer is not older
}
但是我不知道如何用我的客户对象(我想问题是问这个)来调用它
其他相关代码:
public class StoreTestProgram {
public static void main(String args[]) {
Customer[] result;
Store walmart;
walmart = new Store("Walmart off Innes");
walmart.addCustomer(new Customer("Amie", 14, 100));
}
}
this
是从对象成员的方法引用对象的方式。this.money>this
是从对象成员的方法引用对象的方式。this.money>对对象调用方法时,对象变量在当前范围内。在这种情况下,“客户调用”“调用方法”是调用方法的对象(对象是类的实例)
因此,如果对客户a
调用boolean hassmoremonethan(客户c)
,则应将其视为询问客户a的钱比客户c的钱多?
您可以使用this
关键字引用当前对象(帮助读者区分客户c
)
因此,在您的hasMoreMoneyThan
方法中,您可以将this.money
与c.money
进行比较
要调用此方法,您需要对当前客户和要比较的客户的引用。您可以执行以下操作:
Customer currentCustomer = new Customer(...
Customer customerToCompareWith = new Customer(...
if (currentCustomer.hasMoreMoneyThan(customerToCompareWith)) {
// do something
}
编辑让我们尝试一个不同的示例。假设您想要一个方法来了解某个客户是否比另一个客户年长。该代码可能如下所示:
public boolean isOlderThan(Customer c) {
return this.age > c.age;
}
并调用该方法:
public boolean hasMoreMoneyThan(Customer c)
{
}
if (currentCustomer.isOlderThan(customerToCompareWith)) {
// the current customer is older
} else {
// the current customer is not older
}
在对象上调用方法时,对象变量在当前范围内。在这种情况下,“调用方法的客户”是调用方法的对象(对象是类的实例)
因此,如果对客户a
调用boolean hassmoremonethan(客户c)
,则应将其视为询问客户a的钱比客户c的钱多?
您可以使用this
关键字引用当前对象(帮助读者区分客户c
)
因此,在您的hasMoreMoneyThan
方法中,您可以将this.money
与c.money
进行比较
要调用此方法,您需要对当前客户和要比较的客户的引用。您可以执行以下操作:
Customer currentCustomer = new Customer(...
Customer customerToCompareWith = new Customer(...
if (currentCustomer.hasMoreMoneyThan(customerToCompareWith)) {
// do something
}
编辑让我们尝试一个不同的示例。假设您想要一个方法来了解某个客户是否比另一个客户年长。该代码可能如下所示:
public boolean isOlderThan(Customer c) {
return this.age > c.age;
}
并调用该方法:
public boolean hasMoreMoneyThan(Customer c)
{
}
if (currentCustomer.isOlderThan(customerToCompareWith)) {
// the current customer is older
} else {
// the current customer is not older
}
“编辑让我更了解这一点,我现在明白了如何引用对象并调用方法,谢谢!”:“SpencerVreugdenhil Beauclerc,如果这个答案解决了你的问题,那么请考虑通过点击左边的绿色复选标记来接受它。我现在了解了如何引用对象和调用方法,谢谢!)@SpencerVreugdenhil Beauclerc,如果这个答案解决了你的问题,那么请考虑接受它,点击左边的绿色复选标记。我会说“客户调用方法”措辞不好。我并不奇怪这样说会引起混乱。运行时是唯一一个调用方法的运行时。应该是“调用该方法的客户”。我认为“调用该方法的客户”措词不当。我并不奇怪这样说会引起混乱。运行时是唯一一个调用方法的运行时。它应该是“调用方法的客户”。