演算子多重定義とは? わかりやすく解説

Weblio 辞書 > 辞書・百科事典 > ウィキペディア小見出し辞書 > 演算子多重定義の意味・解説 

演算子多重定義

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/08/17 21:54 UTC 版)

C SharpとJavaの比較」の記事における「演算子多重定義」の解説

Java言語仕様シンプルに保つため、また乱用による難読化を防ぐため、ユーザー定義の演算子オーバーロードサポートしていない。一方でコード書きやすさおよび直感性は犠牲になっているvar myList = new java.util.ArrayList(java.util.Collections.nCopies(10, 0));myList.set(4, -100);var gravityTable = new java.util.HashMap();gravityTable.put("Mercury", 0.377);gravityTable.put("Venus", 0.9);gravityTable.put("Earth", 1.0);double gravityOnVenus = gravityTable.get("Venus"); var b1 = new java.math.BigInteger(Long.toString(Long.MAX_VALUE));var b2 = new java.math.BigInteger(Integer.toString(1));var b3 = b1.add(b2); C#表記法多くの点でJavaよりも多機能である。演算子多重定義やユーザー定義キャストなど、それらの多くC++プログラマによって既に親しまれているものであるC#インデクサC++operator[]に相当)をサポートするインデクサの定義構文プロパティ似ているが、this[]という名前をもち、一つ上の引数インデックス)を持つ点が異なる。インデクサ定義する際、インデックスには任意の型を使用することができる。 var myList = new System.Collections.Generic.List(new int[10]);myList[4] = -100;var gravityTable = new System.Collections.Generic.Dictionary();gravityTable["Mercury"] = 0.377;gravityTable["Venus"] = 0.9;gravityTable["Earth"] = 1.0;double gravityOnVenus = gravityTable["Venus"]; C#は(論理的一貫性を保つための制限はあるものの)ユーザー定義の演算子オーバーロードサポートしており、注意深く使用すれば簡潔可読性の高いコード記述することができる。 var b1 = new System.Numerics.BigInteger(long.MaxValue);var b2 = new System.Numerics.BigInteger(1);var b3 = b1 + b2; また、C#では明示的メンバ実装 (Explicit Member Implementation) が可能である。これによって、インターフェイスメソッドの実装クラス自身メソッド実装とを分離することができ、また同じシグネチャ(名前および引数の数と型の順序)を持つメソッド異なインターフェイスそれぞれ存在した場合に、インターフェイス名を指定して区別することでそれらの実装別々に行うことができる。

※この「演算子多重定義」の解説は、「C SharpとJavaの比較」の解説の一部です。
「演算子多重定義」を含む「C SharpとJavaの比較」の記事については、「C SharpとJavaの比較」の概要を参照ください。

ウィキペディア小見出し辞書の「演算子多重定義」の項目はプログラムで機械的に意味や本文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。 お問い合わせ



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「演算子多重定義」の関連用語

演算子多重定義のお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



演算子多重定義のページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
Text is available under GNU Free Documentation License (GFDL).
Weblio辞書に掲載されている「ウィキペディア小見出し辞書」の記事は、WikipediaのC SharpとJavaの比較 (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。

©2024 GRAS Group, Inc.RSS