首页 > 解决方案 > 处理重复的方法头

问题描述

我是编码新手(ish),所以让我们把它排除在外。另外,我目前正在使用Java。我想以两种不同的方式实例化 Line 对象:

public Line(double x1, double y1, double x2, double y2){}//creates a line connecting two points

public Line(double x, double y, double dir, double length){}//creates a line extending off of one point

但是,根据编译器,它们都具有相同的方法头。

我考虑在第二个构造函数中添加一个无用的参数,但这似乎很混乱且没有必要。有没有人对现在和将来如何处理这样的问题有任何建议?

注意:本主题仅是关于修复标题,而不是关于如何改进我的代码。谢谢!

标签: javamethodsparametersconventions

解决方案


另一种方法是避免使用相同的方法头,同时使用更有意义的参数类型:

import java.awt.geom.Point2D;
…
        public Line(Point2D.Double p1, Point2D.Double p2) { … }

        public Line(Point2D.Double p, double dir, double length) { … }

推荐阅读