呃,一定要理解之后自己敲!!!这几道题,使我进一步了解了接口和抽象类。1.设计一个商品类 字段:商品名称,重量,价格,配件数量,配件制造厂商(是数组,因为可能有多个制造厂商)要求: 有构造函数重写 toString 方法重写 equals方法,进行两件商品的比较 1 packag ...
呃,一定要理解之后自己敲!!!这几道题,使我进一步了解了接口和抽象类。
1.设计一个商品类 字段:
商品名称,重量,价格,配件数量,配件制造厂商(是数组,因为可能有多个制造厂商)
要求: 有构造函数
重写 toString 方法
重写 equals方法,进行两件商品的比较
1 package TT; 2 3 import java.util.Arrays; 4 5 public class G { 6 private int 重量; 7 private String 商品名称; 8 private int 价格; 9 private int 配件数量;10 private String[] 配件制造厂商列表;11 12 public G(int 重量, String 商品名称, int 价格, int 配件数量, String[] 配件制造厂商列表) {13 super();14 this.重量 = 重量;15 this.商品名称 = 商品名称;16 this.价格 = 价格;17 this.配件数量 = 配件数量;18 this.配件制造厂商列表 = 配件制造厂商列表;19 }20 21 @Override22 public String toString() {23 return "G [重量=" + 重量 + ", 商品名称=" + 商品名称 + ", 价格=" + 价格 + ", 配件数量="24 + 配件数量 + ", 配件制造厂商列表=" + Arrays.toString(配件制造厂商列表) + "]";25 }26 27 public boolean equals(Object obj) {28 if (this == obj) {29 return true;30 }31 32 if (obj instanceof G) {33 G goods = (G) obj;34 35 if (this.重量 == goods.重量 && this.价格 == goods.价格36 && this.商品名称.equals(goods.商品名称) && this.配件数量 == goods.配件数量) {37 for (int i = 0; i < this.配件制造厂商列表.length; i++) {38 if (this.配件制造厂商列表[i] != goods.配件制造厂商列表[i]) {39 return false;40 }41 }42 return true;43 } else {44 return false;45 }46 } else {47 return false;48 }49 }50 //将测试类和上面的放一块儿了51 public static void main(String[] args) {52 53 String[] 厂商列表1 = { "微软", "索尼", "三星" };54 String[] 厂商列表2 = { "微软", "索尼", "三星" };55 G g1 = new G(40, "电脑", 4000, 30, 厂商列表1);56 G g2 = new G(40, "显示器", 4000, 30, 厂商列表2);57 58 System.out.println(g1);59 System.out.println(g2);60 61 System.out.println(g1.equals(g2));62 }63 }
原标题:Java基础——关于接口和抽象类的几道练习题
关键词:JAVA
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们:
admin#shaoqun.com
(#换成@)。