戻り値のないメソッド、引数のないメソッドというのがイマイチ理解できません。

具体例を交えて、中学生にも理解できるくらいわかりやすくご教授ください。
CC BY-SA 4.0
2019-11-04T01:26:36.643
60233
2019-11-05T03:47:52.343
36421
question
java
戻り値のないメソッド、引数のないメソッド
円周率を返すメソッド（引数無し）

```

    double getpi()
    {
        return 3.1415;
    }
    
```

プリントするメソッド(戻り値なし)

```

    void puri(string p)
    {
    System.out.println(p);
    }
    
```

みたいな。
CC BY-SA 4.0
2019-11-04T04:18:13.273
60237
2019-11-04T04:21:56.697
2019-11-04T04:21:56.697
2376
24490
60233
answer
Javaを含むオブジェクト指向プログラミング言語では、オブジェクトが状態(情報)を持っていますが、この状態(情報)を設定/変更したり、問い合わせたりする場合にそのようなメソッドが表れることがあります。

**時計** オブジェクトが **アラーム時刻** 情報を持っているとき、

  * **時計** に **アラーム時刻** を設定する

場合の典型的な実装方法として、引数に **アラーム時刻** をとる戻り値のないメソッドを用いることが考えられますし、

  * **時計** に設定された **アラーム時刻** を参照する

場合の典型的な実装方法として引数のないメソッドを用いることが考えられます。

```

    class Clock {
        LocalTime alarm;
    
        // 戻り値のないメソッド
        // アラーム時刻を設定する
        void setAlarm(LocalTime alarm){this.alarm = alarm;}
    
        // 引数のないメソッド
        // アラーム時刻を問い合わせる
        LocalTime getAlarm(){return alarm;}
    }
    
```
CC BY-SA 4.0
2019-11-05T03:47:52.343
60263
2019-11-05T03:47:52.343
2808
60233
answer