に結果を代入しますが、この方向に行きたい理由は私はわからないが、私はあなたがそれを避けるためにお勧めします。
x.y()という表記法は、オブジェクトxのメソッドyを呼び出すために使用されます。xをintとして宣言すると、プリミティブ型になり、パーソナライズされたメソッドはありません。
public class StackOverflowInt{
private int x;
public StackOverflowInt(int value) {
this.x = value;
}
public int addTwo(){
return this.x+2;
}
}
して、あなたの結果を達成するために、このクラスを使用します:あなたは何ができるか
は内部で整数を埋め込むパーソナライズメソッドを持つ新しいクラスを作成することです
public static void main(String[] args) {
StackOverflowInt integer = new StackOverflowInt(3);
System.out.println(integer.addTwo());
}
これは5を出力します
もう1つの代替実装は、次のとおりです。
public class StackOverflowInt{
private int x;
public StackOverflowInt(int value) {
this.x = value;
}
public void addTwo(){
this.x = this.x+2;
}
@Override
public String toString(){
return String.valueOf(x);
}
}
、次いで:Javaのintで
public static void main(String[] args) {
StackOverflowInt integer = new StackOverflowInt(3);
integer.addTwo();
System.out.println(integer); //prints 5
}
あなたは原始的でメソッドを呼び出す呼び出すことはできませんタイプ;参照型ではありません。 –
その理由から、単純な答えは「あなたはありません」です。任意のコードを作り、それがなぜ機能しないのか不思議ではありません。 – EJP