public class BufferCapabilities extends Object implements Cloneable
BufferStrategy.getCapabilities()
, GraphicsConfiguration.getBufferCapabilities()
修飾子と型 | クラスと説明 |
---|---|
static class |
BufferCapabilities.FlipContents
ページ反転後に、バックバッファーの内容を型保証して列挙します。
|
コンストラクタと説明 |
---|
BufferCapabilities(ImageCapabilities frontCaps, ImageCapabilities backCaps, BufferCapabilities.FlipContents flipContents)
バッファリング機能を指定するためのオブジェクトを新しく生成します。
|
修飾子と型 | メソッドと説明 |
---|---|
Object |
clone()
このオブジェクトのコピーを作成して、返します。
|
ImageCapabilities |
getBackBufferCapabilities() |
BufferCapabilities.FlipContents |
getFlipContents() |
ImageCapabilities |
getFrontBufferCapabilities() |
boolean |
isFullScreenRequired() |
boolean |
isMultiBufferAvailable() |
boolean |
isPageFlipping() |
public BufferCapabilities(ImageCapabilities frontCaps, ImageCapabilities backCaps, BufferCapabilities.FlipContents flipContents)
frontCaps
- フロントバッファーの機能。null
は指定不可backCaps
- バックバッファーおよび中間バッファーの機能。null
は指定不可flipContents
- ページ反転後のバックバッファーの内容。ページ反転が使用されない場合 (暗黙的な Blit) は null
IllegalArgumentException
- frontCaps または backCaps が null
の場合public ImageCapabilities getFrontBufferCapabilities()
public ImageCapabilities getBackBufferCapabilities()
public boolean isPageFlipping()
getFlipContents
は null
を返すpublic BufferCapabilities.FlipContents getFlipContents()
isPageFlipping
が false
を返す場合は null
(Blit を使用)。この値は FlipContents.UNDEFINED
(デフォルト値)、FlipContents.BACKGROUND
、FlipContents.PRIOR
、または FlipContents.COPIED
のいずれかisPageFlipping()
, BufferCapabilities.FlipContents.UNDEFINED
, BufferCapabilities.FlipContents.BACKGROUND
, BufferCapabilities.FlipContents.PRIOR
, BufferCapabilities.FlipContents.COPIED
public boolean isFullScreenRequired()
true
の場合、フルスクリーン排他モードでページ切り替えを行うisPageFlipping()
, GraphicsDevice.setFullScreenWindow(java.awt.Window)
public boolean isMultiBufferAvailable()
isPageFlipping()
public Object clone()
Object
x
について、次の式
が true であり、次の式x.clone() != x
がx.clone().getClass() == x.getClass()
true
になることですが、これらは絶対的な要件ではありません。また次の式
がx.clone().equals(x)
true
になりますが、これは絶対的な要件ではありません。
慣例上、返されたオブジェクトは、super.clone
を呼び出すことによって取得するようにしてください。クラスとそのすべてのスーパークラス (Object
を除く) がこの規則に従っている場合は、x.clone().getClass() == x.getClass()
が成立します。
通常、このメソッドにより返されるオブジェクトは、このオブジェクト (複製されている) から独立している必要があります。この独立性を実現するには、super.clone
によって返されたオブジェクトを返す前に、その 1 つ以上のフィールドを変更することが必要になる場合があります。これは、通常、複製するオブジェクトの内部「深層構造」を構成する可変オブジェクトのコピー、およびこれらのオブジェクトへの参照をコピーへの参照に置き換えることを意味します。クラスにプリミティブフィールドまたは不変オブジェクトへの参照しか含まれていない場合は、通常、super.clone
によって返されたオブジェクト内のフィールドを変更する必要がありません。
クラス Object
のメソッド clone
は、特定のクローニング操作を実行します。まず、このオブジェクトのクラスがインタフェース Cloneable
を実装していない場合は、CloneNotSupportedException
がスローされます。すべての配列がインタフェース Cloneable
を実装していると見なされること、および配列型 T[]
の clone
メソッドの戻り値の型は T[]
(ここで、T は任意の参照またはプリミティブ型) です。実装していない場合、このメソッドはこのオブジェクトのクラスの新しいインスタンスを生成し、そのフィールドをすべて、このオブジェクトの対応する各フィールドの内容で初期化します。これは代入と同様で、フィールドの内容自身が複製されるのではありません。つまりこのメソッドは、オブジェクトの「シャローコピー」を生成しますが、「ディープコピー」は生成しません。
クラス Object
自体はインタフェース Cloneable
を実装していないため、クラスが Object
であるオブジェクトに対して clone
メソッドを呼び出すと、実行時に例外がスローされます。
バグまたは機能を送信
詳細な API リファレンスおよび開発者ドキュメントについては、Java SE のドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2013, Oracle and/or its affiliates. All rights reserved.