lpirate4 2015-10-29 07:28 采纳率: 50%
浏览 1489
已采纳

Java编程风格问题,新手求教

package chapter5;

abstract class Goods {
private double unitPrice;
private int account;
public double getUnitPrice() {
return unitPrice;
}
public void setUnitPrice(double unitPrice) {
this.unitPrice = unitPrice;
}
public int getAccount() {
return account;
}
public void setAccount(int account) {
this.account = account;
}
public Goods() {}
public Goods(double unitPrice, int account) {
this.unitPrice = unitPrice;
this.account = account;
}
public double totalPrice(){
return unitPrice*account;
}
}
//VIP价格接口
interface VipPrice {
double DISCOUNT=0.8;
double reducedPrice();
}
//服装类
class Clothing extends Goods implements VipPrice {

 private String style;
 public String getStyle() {
  return style;
 }
 public void setStyle(String style) {
  this.style = style;
 }
 public double reducedPrice() {
  return VipPrice.DISCOUNT*totalPrice();
 }
 public Clothing(){}
 public Clothing(String style,double unitPrice, int account) {
  super(unitPrice, account);
  this.style=style;
 }
 public void showInfo(){
  System.out.println("单价:"+getUnitPrice());
  System.out.println("数量:"+getAccount());
  System.out.println("样式:"+style);
  System.out.println("VIP价格:"+reducedPrice());
 }
}
//测试类
public class Test {
 public static void main(String[] args) {
  Clothing c=new Clothing("女装",300,2);
  c.showInfo();
 }
}
为了让JAVA代码看起来美观,可读性强,应该怎么调整代码呢?
具体问题就是我的代码中有好几个类,每个类中属性偏多,我应该把一个类中所有的方法写在一起吗?还有设置器和访问器,是声明一个属性就紧跟在后面写还是把所有的属性声明完之后,一起写设置器和访问器,怎么安排能让结构看起来清晰呢?一个类中一般是按什么顺序写属性、构造器、方法呢?就是如何安排顺序的问题。
  • 写回答

4条回答 默认 最新

  • Lesterth 2015-10-29 08:56
    关注

    方法写在一起也可以,如果方法调用的数据有明显的分界,也可以考虑再建一个类。
    一般是先写属性,再写构造方法,再写其他方法。
    setter和getter可以通过IDE直接生成,属性写完以后再生成比较方便。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥20 keepalive配置业务服务双机单活的方法。业务服务一定是要双机单活的方式
  • ¥50 关于多次提交POST数据后,无法获取到POST数据参数的问题
  • ¥15 win10,这种情况怎么办
  • ¥15 如何在配置使用Prettier的VSCode中通过Better Align插件来对齐等式?(相关搜索:格式化)
  • ¥100 在连接内网VPN时,如何同时保持互联网连接
  • ¥15 MATLAB中使用parfor,矩阵Removal的有效索引在parfor循环中受限制
  • ¥20 Win 10 LTSC 1809版本如何无损提升到20H1版本
  • ¥50 win10 LTSC 虚拟键盘不弹出
  • ¥30 微信小程序请求失败,网页能正常带锁访问
  • ¥15 Matlab求解微分方程,如何用fish2d进行预优?