如何在另一个对象内部使用对象的方法



我在一个名为多项式的类中有一个方法。从主方法中,我创建了一个类型为多项式的对象来使用这个加法方法,但我所做的是将其作为参数传递给另一个对象类型。

p.add(new Polynomial(new Term(-1, 1)));

我知道这会创建一个匿名的LinkedList。我创建了一个返回该Object Type Term的LinkedList的方法,这样我就可以使用该对象及其方法。

我想知道是否有另一种方法可以访问另一个对象内部的那个对象的方法。

这是一项课堂作业,我相信有一种更简单的方法可以做到,但这正是教授想要的

public void add(Polynomial p) {
ListIterator<Term> toAddIterator = p.getTerms().listIterator();
ListIterator<Term> thisIterator = terms.listIterator();
Term termToAdd = toAddIterator.next();
while (thisIterator.hasNext()) {
Term current = thisIterator.next();
if (current.getPower() > termToAdd.getPower()) {
} else if (current.getPower() < termToAdd.getPower()) {
thisIterator.previous();
thisIterator.add(termToAdd);
thisIterator.next();
break;
} else {
thisIterator.previous().addIfSamePower(termToAdd);
break;
}
}
}

大多数时候,在另一个对象内部调用对象的方法的最佳方式是让外部对象实现该方法,然后调用内部对象上的方法。这意味着您的外部类不知道"太多"(外部对象内部有一个对象,并且它实现了给定的方法(。

在本例中,由于您传递了一个在此位置创建的对象,因此只需创建一个对该对象的引用并传递它就可以了,因为您已经知道该对象存在。至少我是这样理解你的问题的。

相关内容

  • 没有找到相关文章

最新更新