Java 9でのtry-with-resourcesの改善点は何ですか?
リソースを試す Java 7で導入されました。これを使用する目的は、リソースを閉じることです。 使用後は自動的に。制限は、リソースがtryの前またはtryステートメント内で宣言される必要があることです。そうでない場合は、コンパイルがスローされます。 エラー 。
Java9はtry-with-resourcesを改善しました そして、tryステートメント内でオブジェクトを宣言する必要がなくなりました。
以下の例では、 try-with-resourcesを実装しています。 コンセプト。
import java.io.*; public class TryWithResourceTest { public static void main(String[] args) throws FileNotFoundException { String line; Reader reader = new StringReader("tutorialspoint"); BufferedReader breader = new BufferedReader(reader); try(breader) { while((line = breader.readLine()) != null) { System.out.println(line); } } catch(IOException ioe) { ioe.printStackTrace(); } } }
出力
tutorialspoint
-
Java 9のサブスクリプションインターフェイスのルールは何ですか?
サブスクリプション データを仲介する目的で、1人のパブリッシャーと1人のサブスクライバーが共有できます 交換 。それがsubscribe()の理由です メソッドは作成されたサブスクリプションを返しませんが、代わりに voidを返します 。サブスクリプションは、 onSubscribe()を介してのみサブスクライバーに渡されます メソッドコールバック。サブスクリプションインターフェースには、 request()の2つのメソッドが含まれています。 およびcancel() 。 構文 public interface Subscription { public void re
-
Java 9での@Deprecatedアノテーションの改善点は何ですか?
@Deprecatedで注釈を付けることができる要素 この特定の要素が以下の理由で使用されなくなったことを意味します 使用するのは危険であり、エラーが発生する可能性があります。 将来のバージョンでは互換性がなくなる可能性があります。 将来のバージョンで削除される可能性があります。 より優れた、より効率的なソリューションがそれに取って代わりました。 Java 9には、次の2つの新しい要素が追加されています。以降 およびforRemoval 属性。 1)以降: この要素は、注釈付きAPI要素の非推奨バージョンを指定します。 2)forRemoval: 注釈付きのAPI要素を表す