プログラミング初体験の人が、「とりあえず」読む本としては、一応合格点だと思います。
但し、絶賛できる本ではないです。
7章までの基礎部分(変数、演算子、条件分岐、反復、配列等)は無難に基礎の概説が進行します。
特に問題点も無いですが、説明のうまさや丁寧さに感心する箇所もありません。
8章以降、クラス等の、オブジェクト指向的な、抽象的な内容に入ります。
しかし、抽象的な内容(オブジェクト指向)を抽象的なまま読者に丸投げしています。
なんだか生焼けの料理を突き出された感じで「やさしい」とは思えないです。
例えばクラスとは何か?メソッドとは何か?参照型とデータ型は何が違うのか?等について
キチッとした説明が出てこないです。
プログラミング未経験者を想定しているから踏み込んだ説明は避けているとでも言うのでしょうか?
だとしても、具体的なイメージがわくような喩え話は必要ではないでしょうか?
「クラスを扱うときには、現実の世界に存在するモノの概念に着目」等等、
どこかの役所の記者会見か?というような抽象的な能書きが述べられた後は、
「××という仕様です。ではコードを打って確認です。
System.out.println・・・はい、やはり××ですね。では次。」
という調子で、無感動なまま最終章まで終わります。
最後に、オーバーロードの説明がマズいと思うので私なりに補足します。
引数の「型と個数」だけではなく「順番」も変えれば、オーバーロードできます。
例 → void hoge(int a, boolean b) と void hoge(boolean b, int a)
べつに「順番を入れ替えても無関係、無意味」とは書いていないですから、
この本は嘘を書いてはいません。しかしこれで本当に「やさしい」のか?疑問の残る本です。