実現したいこと
・javaのout単体の意味
・printlnとPrintStreamの関係
・outとPrintStreamの関係
前提
・outの意味を教えてください
発生している問題・エラーメッセージ
System.out.println(“Hello World”)
を要素ごとに分解してコメントを書く課題があります。クラス・フィールド・メソッドの意味をふまえて訳さなければなりません。
<認められたもの>
System:入出力とエラー出力機能のまとまり
println:コンソールに引数Hello Worldを出力して改行する
out.printlnになっているが、outのなかにprintlnが含まれているわけでない教えられましたが、ではどのような関係なのでしょうか?
outを出力するものや標準出力ストリームと答えたところ、outの意味を深く調べるようにと言われました。
java ### 補足情報(FW/ 初心者でいたらない部分もあると思いますが、何卒お知恵を拝借したいです。
> outのなかにprintlnが含まれているわけでない教えられましたが
この前提がおかしいような印象も受けます。
クラスとかフィールドとかメソッドとか、違いが分かっていないということでしょうか。
ドキュメントを確認すれば済む話に思います。
ピリオドをどう解釈するか、また自分で調べられることが課題です。ピリオドは次のような意味を持ちます。
・パッケージ階層の区切り
・パッケージとクラスの区切り
・クラスと、フィールドやメソッド、内部クラスの区切り
あらかじめこの説明がなされていなければならない。
><認められたもの>
認められたって何のことでしょう?
>System:入出力とエラー出力機能のまとまり
だけではありません。
m.ts10806 さんらが仰っている通り、まずはドキュメントです。
https://docs.oracle.com/javase/jp/8/docs/api/java/lang/System.html
>Systemクラスによって得られる機能には、標準入力、標準出力、およびエラー出力ストリーム、外部的に定義されたプロパティおよび環境変数へのアクセス、ファイルおよびライブラリのローディング方法、配列の一部をすばやくコピーするユーティリティ・メソッドがあります。
>println:コンソールに引数Hello Worldを出力して改行する
コンソールとは限りません。ドキュメントには「コンソールに」とはありません。
https://docs.oracle.com/javase/jp/8/docs/api/java/io/PrintStream.html#println-java.lang.String-
>Stringを出力して、行を終了します。
<認められたもの>とは教官に認められた、コメントの訳です。言葉足らずで申し訳ないです。
コンソールとしたのもエクリプスを使用していたため、標準出力先はどこか明らかにして書けという事だったので、このように記載しました。
ドキュメントに記載されているoutの説明で提出しても、outの意味ではないと返されました。
outの中身と、System.out.println("Hello World");においてどのような役割なのかについて答えなければならず、outの検索結果のどの答えでも通りませんでした。
> ドキュメントに記載されているoutの説明で提出しても、outの意味ではないと返されました。
頑張る価値がない課題だと判断します。「先生の気に入る答え」を探す作業に、プログラミング上の意味が生じることはありません。
教官好みの答えを出せと言う前提なら赤の他人ができることはないです。
授業で配布された資料や先生の講義から捻出するしかありません。
教官からの資料などはなく、書籍や検索機能から自分の言葉でまとめなさいというものだったので、これ以上なすすべなく、こちらでご助力をお願いしました。すみませんでした。
フィールドはデータの値、クラスフィールドはクラスの情報を保持するものと解釈したのですが、outの中身はnullでしょうか?
> outの中身はnullでしょうか?
それではメソッドを呼べません。
public static final PrintStream out = null;
エクリプスでoutにカーソルをおいてF3で開いた画面にあった、このnullが何なのかについてお手数ですが、ご教授お願いします。
何のコードからなのか分かりませんが、初期値が null なだけで、何処かで PrintStream オブジェクトが設定されるかも知れません…と思ったら final ですか…なんでしょうね。