クラスメソッドのみのクラスのオブジェクト生成は不可??
あるテキストのjavaの問題です。
public class Draw{
static void pixel(int x,int y){
/*座標(x、y)に点を描画*/
}
static void line(int x1,int y1,int x2,int y2){
/*座標(x1、y1)~(x2、y2)に線を引く*/
}
}
で、これを実行するための以下のようなクラス
public class TestDraw{
<ここに入力>
}
という問題なのですが2つまでは絞れたのですが、
(1)
public static void main(String args[]){
Draw d = new Draw().line(10,10,20,30);
}
↑×
(2)
public static void main(String args[]){
Draw.line(10,10,20,30);
}
↑○
(2)はlineメソッドがstaticメソッドだからオブジェクト生成しなくても良い、ということなんですが
(1)も正解のような気がするのですが・・・
解説によると「lineはvoidなのでnew Draw().line(10,10,20,30);とすれば正解、とあります。
どうもいまいち理解できません。
クラスメソッドはオブジェクト生成しなくとも良い→オブジェクト生成できない
ということなのでしょうか?
それからちなみに、public classって2つ記述できないんではありませんでしたか?
お礼
ありがとうございました。