並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 14 件 / 14件

新着順 人気順

sealedの検索結果1 - 14 件 / 14件

タグ検索の該当結果が少ないため、タイトル検索結果を表示しています。

sealedに関するエントリは14件あります。 java開発プログラミング などが関連タグです。 人気エントリには 『Java の enum を使いこなせるあなたに sealed interface』などがあります。
  • Java の enum を使いこなせるあなたに sealed interface

    はじめに Java の enum は大変便利で非常多くのシーンで活用されています。例えば区分を表すようなオブジェクトを表現したい際にもよく使われていますね。 Java 14 で正式機能となった switch式にて網羅性検査が行えるようになり、それまで以前ではどうしても抽象メソッド等を活用する必要があった処理についても、switch式を利用する事で簡潔に表現することができるようになりました。 また、Java 17 で正式機能となった sealed classes/interfaces と Java 21 で正式機能になった Record Patterns によって、これまで必要だった区分値のような enum を必ずしも定義しなくて良い場合も出てきました。 この記事では、今まで enum を使っていたコードがこれらの機能によってどのように変わるのかを紹介し、盲目的に enum を定義するのでは

      Java の enum を使いこなせるあなたに sealed interface
    • Java 注目の機能:Sealed クラス

      クラスまたはインタフェースはsealedと宣言されている場合があります。これは特定のクラスやインタフェースの集合だけがそれを直接拡張できることを意味します。 sealed interface Shape permits Circle, Rectangle { ... } これは Shape と呼ばれる Sealed インタフェースを宣言します。permits リストは、Circle と Rectangle だけが Shape を実装できることを意味しています。(場合によっては、コンパイラが permits 句を推論できるかもしれません)。 Shape を拡張しようとする他のクラスやインタフェースは、コンパイルエラーを受けます(または、Shape をスーパータイプとして宣言しているラベル外のクラスファイルを生成しようとした場合は、実行時エラーとなります)。 私たちは、final クラスを介し

        Java 注目の機能:Sealed クラス
      • 3年ぶりの長期サポート版となる「Java 17」正式版がリリース。M1 Macのサポート、Sealed Classの追加など

        3年ぶりの長期サポート版となる「Java 17」正式版がリリース。M1 Macのサポート、Sealed Classの追加など Javaの新バージョン「Java 17」が正式にリリースされました。Java 17は、Java 11以来3年ぶりの長期サポート対象となるJavaのバージョンです。 Java 17 is now available! #Java17 #JDK17 #OpenJDK Download now: https://t.co/ui83Aehxoq Release notes: https://t.co/VKB0vfaPsP API Javadoc: https://t.co/VHs6UWdka8 Documentation: https://t.co/74Dk6r23Dt pic.twitter.com/NZvvxchXGT — Java (@java) September

          3年ぶりの長期サポート版となる「Java 17」正式版がリリース。M1 Macのサポート、Sealed Classの追加など
        • Kotlinのsealed classを使ってif文を取り除き、コードをシンプルにする - Uzabase for Engineers

          はじめに 皆様こんにちは、ソーシャル経済メディア「NewsPicks」(Media Infrastructureチーム)エンジニアの北見です。 弊社では Server Side Kotlin を採用しており、昔に書かれた一部のコードは Java ですが、基本的に新規コードは Kotlin で書いており、既存の Java コードも Kotlin 化を推し進めています。 tech.uzabase.com tech.uzabase.com 今回は Kotlin の sealed class を使って、コードをシンプルにする例をご紹介します。 kotlinlang.org 微妙に異なるけど殆ど同じ処理を共通化 例えば、クレジットカードとキャリア決済の2通りで商品を購入するユースケースを考えてみます。 class PurchaseService( val productRepository: Pro

            Kotlinのsealed classを使ってif文を取り除き、コードをシンプルにする - Uzabase for Engineers
          • Javaで今後追加されるかもしれないSealed TypesとKotlinのSealed Classを比べてみる! - 虎の穴開発室ブログ

            みなさんこんにちは、虎の穴ラボのH.Kです。 Java 14のリリースが2020/03に予定されておりますが、今回はさらに先のリリースで入ると言われているSealed Typesという機能を詳しく見ていきます。 Sealed Typesと聞いて最初に感じたことは「Kotlinでも似たような機能(Sealed Class)がある」ということだったのでKotlinの機能との比較を通して内容を整理できたらと思います。 Sealed Typesとは 大まかな言い方をしてしまえば、継承先を制限できる機能です。 詳細については以下のJEPに記載があります。 openjdk.java.net 執筆時点(2020/02)ではPreviewとなっているため、この機能を利用するためにはjavacを実行する際に--enable-previewオプションをつけて有効化する必要があります。 JEPのMotivati

              Javaで今後追加されるかもしれないSealed TypesとKotlinのSealed Classを比べてみる! - 虎の穴開発室ブログ
            • Kotlin sealedタイプによる論理和型の実装: ポリモーフィズム形式と代数的データ型形式 - ドワンゴ教育サービス開発者ブログ

              はじめに ポリモーフィズム形式の実装 ポリモーフィズム形式の実装の利点 ポリモーフィズム形式の実装の欠点 代数的データ型形式の実装 代数的データ型形式の実装の利点 代数的データ型形式の実装の欠点 まとめ We are hiring! はじめに Kotlinのsealedタイプ (sealed class と sealed interface) は、外部モジュールによるクラスの継承やインターフェースの実装 (以降は実装で統一します) を制限することで、継承先クラスの一覧を静的に取得できるようにする機能です。 以下は公式ドキュメントの例ですが、sealedタイプを使うことで log() 関数内の when が全てのとり得るパターンを網羅していることがコンパイル時にチェックされ、冗長な else を省くことができます。 また、Error インターフェースの直接の実装先が増えて when が網羅性

                Kotlin sealedタイプによる論理和型の実装: ポリモーフィズム形式と代数的データ型形式 - ドワンゴ教育サービス開発者ブログ
              • enumの使い方のおさらいと高機能enumとしてのSealedクラス - きしだのHatena

                Javaでは複数の定数をまとめて扱う型としてenum(列挙型)が用意されています。 これはこれで便利なのですが物足りないところもあって、それがSealedクラスなどを使うことで解決できるようになるので、解説します。 enum型 enumは状態やデータ区分を表すのによく使われます。 構文は次のようになります。 enum 型名 { 列挙1, 列挙2, ... } 例えば次のような状態を表すとします。 この状態を表すenumは次のようになります。それぞれの値は大文字で書くようにします。 enum State { READY, RUNNING, SUSPENDED, TERMINATED } enumではそれぞれの値ごとに処理を行うということがよくあります。そこでswitchと相性がいいです。 State s = State.READY; switch (s) { case READY -> Sy

                  enumの使い方のおさらいと高機能enumとしてのSealedクラス - きしだのHatena
                • Kotlinのsealed型を使って高機能なenum型を実装する - ドワンゴ教育サービス開発者ブログ

                  はじめに シンプルな実装例 sealed型による実装のメリット enumに階層関係を持たせることができる 個々の値を型として扱える sealed型による実装のデメリット 言語仕様が提供する便利機能を利用できない まとめ We are hiring! はじめに blog.nnn.dev Kotlinのsealed型の使い方を考える記事の第2弾です。 前回の記事では、sealed型を使って論理和型を実装しましたが、今回は通常の enum class よりも機能を拡張したenum型を実装したいと思います。 シンプルな実装例 通常、Kotlinでenum型を使いたい場合は、enum class を使って、次のように実装します。 /** * 学校で教える教科 (抜粋) */ enum class SchoolSubjectEnum { /** 日本史 */ JAPANESE_HISTORY, /**

                    Kotlinのsealed型を使って高機能なenum型を実装する - ドワンゴ教育サービス開発者ブログ
                  • JavaのSealed Classesについて

                    この記事は GMOアドマーケティング Advent Calendar 2021 13日目の記事です。 GMOアドマーケティングのT.Nです。 Java 17でSealed ClassesがPreviewからStandardになりました。 弊社でも先日一部のプロダクトをJava 17にバージョンアップしたので、 今後Sealed Classesを活用していけるように記事にまとめました。 今回の記事は全体的にJEP 409 を参考にしています。 Sealed Classesとは 簡単に説明すると、 extends、implementsできるクラスを制限するための仕組みです。 sealed、non-sealed、permitsという新しい文法を使って実現できます。 Sealed Classesを活用することで、 クラスの階層でドメイン知識を表現しやすくなります。 sealedをつけたクラス、イン

                      JavaのSealed Classesについて
                    • C#のsealedメソッドをオーバーライドする

                      マシンコードのレベルでメソッドを呼び出す場合には、C#のコードでは無視できた複数の問題を意識する必要があります。名称とパラメータをメソッドに提供するだけではなく、メソッドへの値の渡し方(レジスタ経由か、スタック経由か)を知っておかなくてはなりません。それだけではありません。メソッド終了時に誰がスタックをクリーンアップするか(呼び出される側か、呼び出す側か)、どうやって値を返すのか、パラメータの順番は(左から右、あるいは右から左)など、さまざまな詳細も知っておく必要があります。C#で書く場合には、.NETプラットフォームがこれらを処理してくれるので、詳細を無視することができるのですが、マシンコードのレベルでは、バイナリプロトコルに準拠するように注意しなければなりません。それを怠れば、セグメンテーション違反やアクセス違反などを受けることになるでしょう。 JITコンパイルは複数ステップからなるプ

                        C#のsealedメソッドをオーバーライドする
                      • 【二次創作】機動戦士ガンダム ラグランジュレポート Sealed Story 1ページ目|cotama

                        機動戦士ガンダムの二次創作やメカ系の同人誌を描くのが趣味です。 サークル名は宇宙移民の会。 同人誌の頒布はメロンブックスとBOOTHとおでライ沖縄のみで頒布しています。 ちょっとまだnoteの使い方がわかってないのですが、いずれは過去作なども掲載したいと考えています。

                          【二次創作】機動戦士ガンダム ラグランジュレポート Sealed Story 1ページ目|cotama
                        • 蚕の夏 - my lips are sealed

                          今年の夏は蚕を生まれてから死ぬまで飼った。 もともと蚕の飼育に興味があったのだが、ある日偶然Twitterで立川経済新聞(というローカルニュースサイト)の記事を目にした。くにたち農園の会というNPOが「お蚕フレンズプロジェクト」という催しをやっているという。 記事を見てみると、お蚕さまの受け渡しと説明会が行われるのは谷保にある古民家。谷保は自宅からアクセスが良いので、これはいい機会だと思い申し込んだ。 そういえば、かつて八王子は養蚕がとても盛んで「桑都」とも呼ばれるほどだったらしい。現在東京都内で唯一の養蚕農家も八王子にある。国立や日野のあたりも養蚕のための桑畑がたくさんあって、その名残で今もそのへんに生えているらしい。 7月2日、いよいよ「掃き立て」(孵化した蚕を掃き集めて、新しい飼育場所に移すこと)。料金を支払うと手渡されたのは、マヨネーズやケチャップなんかを入れるようなプラスチックの

                            蚕の夏 - my lips are sealed
                          • sealed classでのParcelizeの使い方と動く仕組み - Qiita

                            以下のようにすることで実装してくことができます。 ポイントはsealed class自体にはParcelizeをつけないで、サブクラスで実装させることです。 sealed class Sealed(open val sealedClassProperty: String) : Parcelable { @Parcelize data class SubDataClass(val subClassProperty: String, override val sealedClassProperty: String) : Sealed(sealedClassProperty) @Parcelize class SubClass(val subClassProperty: String, override val sealedClassProperty: String) : Sealed(seal

                              sealed classでのParcelizeの使い方と動く仕組み - Qiita
                            • Implementation of API call state using sealed class

                              AndroidアプリのUIバリエーションをあの手この手で確認する / Check UI variations of Android apps by various means

                                Implementation of API call state using sealed class
                              1

                              新着記事