質問

あJava Void --大文字V-- 参照型.唯一の状況でいいのといったらてのらさんではparameterize Callables

final Callable<Void> callable = new Callable<Void>() {
            public Void call() {
                foobar();
                return null;
            }
        };

その他の用途のJava Void 参照す。でも指定以外のもの null?また、いする。

役に立ちましたか?

解決

Void となってい条約は、一般の引数いることに興味がない。そのものを使用できるその他の非instantiableタイプなど System.

広く採用されています、例えば Map 値が Collections.newSetFromMap 用途 Boolean どん受け入れはしてお null 値) java.security.PrivilegedAction.

書いた ブログの入力Void ができました。

他のヒント

を作成できますインスタンスのボイドを反射すが、なに役立つものです。ボイドがを示すような一般的方法を返します。

Constructor<Void> constructor = Void.class.getDeclaredConstructor();
constructor.setAccessible(true);
Void v = constructor.newInstance();
System.out.println("I have a " + v);

版画のようなもの

I have a java.lang.Void@75636731

Future<Void> 作品のような魅力です。:)

があることから、 ないpublicコンストラクタ, んじゃないでしょうかはできなくな担当以外のもの null.ったとして利用するには、プレースホルダ"おんする必要があるの汎用パラメーターとしての例です。

で使用することも反映し、その Javadoc "と言ってい

ボイドのクラスは、uninstantiableプレースホルダークラスへの参照を保持するクラスを表すオブジェクトのJavaのキーワードは無効となるものとする。

すべてのプリミティブラッパークラス(Integer, Byte, Boolean, Double, 等) の参照が含まれているのに対応するプリミティブクラスの静的な TYPE 分野、例えば:

Integer.TYPE == int.class
Byte.TYPE == byte.class
Boolean.TYPE == boolean.class
Double.TYPE == double.class

Void した初めに作られたものとしてどこかに置への参照 void タイプ:

Void.TYPE == void.class

しかし、にんに本当に得るものを使用 Void.TYPE.ご利用の際は void.class でより鮮明に見せなければならないことをやっているもの void タイプです。

ちなみに、前回ってみたので BeanShell かを認識 void.class, ですから、使用 Void.TYPE あります。

をご利用の場合 お客様のパターン できるクリーナー用ボイドの代わりにオブジェクトがしたいっていることをご確認ください戻り値はnullにな

public interface LeavesVisitor<OUT>
{
   OUT visit(Leaf1 leaf);

   OUT visit(Leaf2 leaf);
}

するには、以下の方法がありますの実施お客様で明示的に設定を無効とするお客様は常にnullを返しを使わずにオブジェクト

public class MyVoidVisitor implements LeavesVisitor<Void>
{
    Void visit(Leaf1 leaf){
        //...do what you want on your leaf
        return null;
    }

    Void visit(Leaf2 leaf){
        //...do what you want on your leaf
        return null;
    }
}

前のジェネリック薬で製作された、反射APIの開催によって返される型方法です。getReturnType()のための空法に該当するその他のプリミティブ型ます。

編集:からのJavaDocのボイド:"のボイドのクラスは、uninstantiableプレースホルダークラスへの参照を保持するクラスを表すオブジェクトのJavaのキーワードvoid".以前のジェネリック医薬品、私は認識しな利用以外の反射を生み出します。

としてできないインスタンスを生成Voidを使用でき Apache commons Nullオブジェクト, ので、

Null aNullObject = ObjectUtils.Null;
Null noObjectHere = null;

最初のラインナップは、あなたにオブジェクトで aNullObject != null 開催中の線があったが、 noObjectHere == null

答えによらのポスターの質問は、カメラとして使用する場合は差別化する"、"何もしない全く違います。

PS:っているのNullオブジェクトのパターン

ボイドが作成後、ボイドプリミティブタイプです。毎プリミティブ型において、対応する参考タイプです。Voidを使いインスタンスを生成する汎用クラスまたは利用の汎用的な方法は、一般の引数が魔法使いの方々はとても喜んでください。ここでは一例です---

public void onNewRegistration() {
    newRegistrationService.createNewUser(view.getUsername(), view.getPassword(),
            view.getInitialAmount(), view.getCurrency(), new AsyncCallback<Void>() {
      @Override
      public void onFailure(Throwable caught) {

      }

      @Override
      public void onSuccess(Void result) {
        eventBus.fireEvent(new NewRegistrationSuccessEvent());
      }
    });
  } 

ここでは、ご覧の通り、たくないものから、サーバーという新しい登録が public interface AsyncCallback<T> { .... } は汎用インタフェースで提供していボイドからジェネリック医薬品なプリミティブ型

でも一般的に使用される非同期-IOデフォルト合いによっての必要性 Attachment オブジェクトです。その場合にnullを指定しのIO運営-実施 CompletionHandler<Integer,Void>.

では珍しい場合は、一度使用した Void 内面ます。

この面での後方法とは @Log アノテーションおよびログの方法に返され、一部の情報このメソッドの戻り値の型が無効となります。

 @AfterReturning(value = "@annotation(log)", 
       returning = "returnValue", 
       argNames = "joinPoint, log, returnValue"
      )
    public void afterReturning(final JoinPoint joinPoint, final Log log,
            final Object returnValue) {

            Class<?> returnType = ((MethodSignature) joinPoint.getSignature())
            .getReturnType();
           if (Void.class.isAssignableFrom (returnType)) ) {
            //Do some log
         }
}
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top