亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何在不使用構建器、靜態構造函數或拋出異常的情況下創建一個包含兩個永遠不相等的整數的構造函數?

如何在不使用構建器、靜態構造函數或拋出異常的情況下創建一個包含兩個永遠不相等的整數的構造函數?

縹緲止盈 2023-03-09 15:40:51
我有一種奇怪的感覺,即當構造函數編寫不正確時,代碼開始變得更加復雜。最近,我一直在嘗試簡化并堅持較低級別的 oop 原則,以便代碼不會長成復雜的蜘蛛網。https://softwareengineering.stackexchange.com/questions/181850/are-exceptions-an-oop-concept我問的問題可能是不可能的。public class Foo{    private int x;    private int y;    public Foo(int x, int y)    {        this.x = x;        this.y = y;    }}總是這樣---->foo.getX() != foo.getY();
查看完整描述

1 回答

?
RISEBY

TA貢獻1856條經驗 獲得超5個贊

你根本做不到。


保證兩個整數不相等的唯一方法是只接受一個整數并以保證不等式的方式從中導出第二個整數,例如加一。


    public Foo(int x, int y)

    {

        this.x = x;

        this.y = x + 1; // guaranteed not to be equal to x.

    }

但是,如果您需要接受兩個值(例如,因為您需要比只分開一個值更大的靈活性),唯一合理的做法是在它們相等時拋出異常。


查看完整回答
反對 回復 2023-03-09
  • 1 回答
  • 0 關注
  • 101 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號