问:我把输出Func。并且系统没有打印分配器对象。
范例.java
public class 示例 {
public static void main (String [] args ){ ShoppingCart cart = new ShoppingCart (); 产品pez =新产品(“樱桃PEZ笔芯(12件)” );购物车。addItem (pez ,5 ); / *由于数量为1是将产品添加到购物车时的常见参数,因此 *您的开发人员要求您使以下代码正常工作,并保持
*添加产品和数量的能力。
* /
产品分配器=新产品(“ Yoda PEZ分配器” );/ * 在添加了使用方法签名的新方法之后,取消注释此行之后的行, 以解决ShoppingCart.java * / cart中的请求。addItem (分配器); } }
ShoppingCart.java
公共 类 ShoppingCart {
public void addItem (Product item ){系统。出来。的printf (“添加%S。” ,项目。的getName ()); } public void addItem (产品项,整数数量){系统。出来。的printf (“添加的%s%d到购物车。%N” ,数量,物品。的getName
());
/ *为了清楚起见,省略了其他代码。请想象 这里有很多代码。不要重复。 * / } }
产品.java
公共 类 Product {
/ *为了清楚起见,省略了其他代码,但是您可以想象 它会存储价格,大小和颜色之类的选项 * / private String mName ; 公共产品(字符串名称){ mName =名称; } public String getName (){ return mName ; } }
答:挑战在于,您希望在新的“ addItem”方法内使用2个参数调用“ addItem”方法。你犯了和我一样的错误。代替在新方法中使用printf,请尝试以下操作:
public void addItem (Product item ) {
addItem (item ,1 ); }
希望这可以帮助!