2017-06-06 4 views
-2

私はJavaを使い慣れていないので、私のところではエラーかどうかは分かりません。私のプロジェクトには2つのパッケージがあります。私はパッケージj2のクラスのオブジェクトにパッケージlovoのクラスに属するオブジェクトを使用しようとしています。パッケージlovoに属するオブジェクトのコンストラクタがメソッドとして扱われています。何故ですか?メソッドのように動作するコンストラクタ

package j2; 
import lovo.kulo; 

public class J2 
{ 

public static void main(String[] args) 
     { 

    kulo kla ; 
    kla = new kulo(); 
    //kla.kulo(); 
     } 
} 

package lovo; 

public class kulo { 
    public void kulo(){ 
    System.out.print("This is supposed to be a constructor");} 

} 

私は出力がありませんが、コメントを削除してコードとして追加すると出力されます。それはコンストラクタなので、オブジェクトが作成されるとすぐには印刷しないでください。

+3

問題が再現されたコード例が必要です。それを行う方法はhttps://stackoverflow.com/help/mcveを参照してください。 – Radiodef

+0

ようこそ。問題ははっきりしていません。 – c0der

+0

「方法のように扱われている」とはどういう意味ですか?あなたはそれが方法のように扱われていることをどのように知っていますか?ここで答えを得るための最良の方法は、いくつかのコード(他の人が実際にコンパイルできるコード)を表示し、コードが期待するものを教えてください。 (実際の出力および/またはコンパイラのエラーメッセージを含む) –

答えて

0

これは実際の方法です。それをコンストラクタにするには、voidの戻り値の型を削除します。 Javaの命名規則に従い、クラス名(したがってコンストラクタ名)を大文字で始めると、混乱は少なくなります。

関連する問題