Skip to content

Commit 1f70a05

Browse files
1 parent 56e9fb3 commit 1f70a05

File tree

2 files changed

+14
-22
lines changed

2 files changed

+14
-22
lines changed

options.html

+1-1
Original file line numberDiff line numberDiff line change
@@ -2222,7 +2222,7 @@
22222222
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;fuzzy&quot; も含まれている場合は機能しない。<br>
22232223
<br>
22242224
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="Constant" href="options.html#'completepopup'" name="'completepopup'">'completepopup'</a>&nbsp;<a class="Constant" href="options.html#'cpp'" name="'cpp'">'cpp'</a><br>
2225-
<a class="Type" href="options.html#'completepopup'">'completepopup'</a>&nbsp;<a class="Type" href="options.html#'cpp'">'cpp'</a>&nbsp;&nbsp; 字列&nbsp;&nbsp;(既定では空)<br>
2225+
<a class="Type" href="options.html#'completepopup'">'completepopup'</a>&nbsp;<a class="Type" href="options.html#'cpp'">'cpp'</a>&nbsp;&nbsp; 文字列&nbsp;&nbsp;(既定では空)<br>
22262226
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;グローバル<br>
22272227
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="Special">{</span><a class="Identifier" href="various.html#+textprop">+textprop</a><span class="Special">&nbsp;または&nbsp;</span><a class="Identifier" href="various.html#+quickfix">+quickfix</a><span class="Special">&nbsp;機能付きでコンパイルさ</span><br>
22282228
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="Special">れたときのみ有効}</span><br>

vim9class.html

+13-21
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
helpname: 'vim9class'
44
---
55
<div id='vimCodeElement'>
6-
<a class="Constant" href="vim9class.html" name="vim9class.txt">vim9class.txt</a>&nbsp;For&nbsp;<span class="Identifier">Vim バージョン 9.1.</span>&nbsp;&nbsp;Last change: 2024 Dec 29<br>
6+
<a class="Constant" href="vim9class.html" name="vim9class.txt">vim9class.txt</a>&nbsp;For&nbsp;<span class="Identifier">Vim バージョン 9.1.</span>&nbsp;&nbsp;Last change: 2025 Feb 16<br>
77
<br>
88
<br>
99
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="Identifier">VIMリファレンスマニュアル&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; by Bram Moolenaar</span><br>
@@ -58,7 +58,6 @@
5858
クラス階層は単一の継承になる。それ以外の場合は、必要に応じてインターフェイスを<br>
5959
使用すること。<br>
6060
<br>
61-
<br>
6261
<span class="PreProc">クラスのモデリング</span><br>
6362
<br>
6463
好きな方法でクラスをモデル化できる。何を構築しているのかを念頭に置き、現実世界<br>
@@ -128,7 +127,6 @@
128127
クラス名を式として使用することはできない。クラス名は、代入の左辺では使用できな<br>
129128
い。<br>
130129
<br>
131-
<br>
132130
<span class="PreProc">オブジェクト変数の書き込みアクセス</span><br>
133131
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="Constant" href="vim9class.html#read-only-variable" name="read-only-variable">read-only-variable</a><br>
134132
では、オブジェクト変数を直接変更してみよう:<br>
@@ -272,6 +270,9 @@
272270
new() メソッドを定義するときは、戻り値の型を指定しないこと。常にクラスのオブ<br>
273271
ジェクトを返す。<br>
274272
<br>
273+
new() メソッドは、&quot;_new()&quot; を使用して protected メソッドにすることができる。こ<br>
274+
れは、シングルトン設計パターンをサポートするために使用できる。<br>
275+
<br>
275276
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="Constant" href="vim9class.html#E1386" name="E1386">E1386</a><br>
276277
オブジェクトメソッドを呼び出すときは、メソッド名の前にオブジェクト変数名を付け<br>
277278
る必要がある。クラス名を使用してオブジェクトメソッドを呼び出すことはできない。<br>
@@ -625,13 +626,15 @@
625626
<div class="helpExample">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;extends ClassName<br>
626627
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;implements InterfaceName, OtherInterface<br>
627628
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;specifies SomeInterface</div>
629+
<br>
630+
&quot;specifies&quot; 機能は現在実装されていない。<br>
631+
<br>
628632
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="Constant" href="vim9class.html#E1355" name="E1355">E1355</a>&nbsp;<a class="Constant" href="vim9class.html#E1369" name="E1369">E1369</a><br>
629633
各変数とメソッドの名前は 1 回だけ使用できる。同じ名前で異なる型の引数を持つメ<br>
630634
ソッドを定義することはできない。パブリックと protected のメンバー変数を同じ名<br>
631635
前で使用することはできない。スーパークラスで使用したオブジェクト変数名を子クラ<br>
632636
スで再利用することはできない。<br>
633637
<br>
634-
<br>
635638
<span class="PreProc">オブジェクト変数の初期化</span><br>
636639
<br>
637640
変数の型がクラスで明示的に指定されていない場合、クラス定義時に &quot;any&quot; に設定さ<br>
@@ -686,13 +689,12 @@
686689
のみ使用できる&nbsp;<a class="Constant" href="vim9class.html#E1350" name="E1350">E1350</a>&nbsp;。複数のインターフェイスをコンマで区切って指定できる。<br>
687690
各インターフェイス名は 1 回だけ出現できる。&nbsp;<a class="Constant" href="vim9class.html#E1351" name="E1351">E1351</a><br>
688691
<br>
689-
<br>
690692
<span class="PreProc">インターフェイスを定義するクラス</span><br>
691693
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="Constant" href="vim9class.html#specifies" name="specifies">specifies</a><br>
692694
クラスは、名前付きインターフェイスを使用して、そのインターフェイス、オブジェク<br>
693695
ト変数およびメソッドを宣言できる。これにより、多くの言語、特に Java で頻繁に行<br>
694696
われる、インターフェイスを個別に指定する必要がなくなった。<br>
695-
<br>
697+
TODO: 現時点では実装されていない。<br>
696698
<br>
697699
<span class="PreProc">クラス内の項目</span><br>
698700
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="Constant" href="vim9class.html#E1318" name="E1318">E1318</a>&nbsp;<a class="Constant" href="vim9class.html#E1325" name="E1325">E1325</a>&nbsp;<a class="Constant" href="vim9class.html#E1388" name="E1388">E1388</a><br>
@@ -733,24 +735,24 @@
733735
使用できる。オブジェクトは、これらの組み込み関数と同じ名前のメソッドを実装し<br>
734736
て、オブジェクト固有の値を返すことができる。<br>
735737
<br>
736-
<span class="Statement">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><a class="Constant" href="vim9class.html#E1412" name="E1412">E1412</a><br>
738+
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="Constant" href="vim9class.html#E1412" name="E1412">E1412</a><br>
737739
以下の組み込みメソッドがサポートされている:<br>
738-
<span class="Statement">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><a class="Constant" href="vim9class.html#object-empty()" name="object-empty()">object-empty()</a><br>
740+
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="Constant" href="vim9class.html#object-empty()" name="object-empty()">object-empty()</a><br>
739741
&nbsp;&nbsp;&nbsp;&nbsp;empty()&nbsp;&nbsp;<a class="Identifier" href="builtin.html#empty()">empty()</a>&nbsp;関数によって呼び出され、オブジェクトが空かどうかを確認<br>
740742
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; する。このメソッドが存在しない場合は、true が返される。このメソッ<br>
741743
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ドは引数を受け入れず、真偽値を返す必要がある。<br>
742-
<span class="Statement">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><a class="Constant" href="vim9class.html#object-len()" name="object-len()">object-len()</a><br>
744+
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="Constant" href="vim9class.html#object-len()" name="object-len()">object-len()</a><br>
743745
&nbsp;&nbsp;&nbsp;&nbsp;len()&nbsp;&nbsp;&nbsp;&nbsp;<a class="Identifier" href="builtin.html#len()">len()</a>&nbsp;関数によって呼び出され、オブジェクトの長さを返す。このメ<br>
744746
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ソッドがクラスにない場合はエラーが発生し、ゼロが返される。このメ<br>
745747
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ソッドは引数を受け入れず、数値を返す必要がある。<br>
746-
<span class="Statement">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><a class="Constant" href="vim9class.html#object-string()" name="object-string()">object-string()</a><br>
748+
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="Constant" href="vim9class.html#object-string()" name="object-string()">object-string()</a><br>
747749
&nbsp;&nbsp;&nbsp;&nbsp;string()&nbsp;<a class="Identifier" href="builtin.html#string()">string()</a>&nbsp;関数によって呼び出され、オブジェクトのテキスト表現を取<br>
748750
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 得する。オブジェクトに対する&nbsp;<a class="Identifier" href="eval.html#:echo">:echo</a>&nbsp;コマンドでも使用される。この<br>
749751
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; メソッドがクラスにない場合は、組み込みのデフォルトのテキスト表現<br>
750752
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; が使用される。このメソッドは引数を受け入れず、文字列を返す必要が<br>
751753
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ある。<br>
752754
<br>
753-
<span class="Statement">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><a class="Constant" href="vim9class.html#E1413" name="E1413">E1413</a><br>
755+
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="Constant" href="vim9class.html#E1413" name="E1413">E1413</a><br>
754756
クラスメソッドを組み込みメソッドとして使用することはできない。<br>
755757
<br>
756758
<span class="PreProc">インターフェイスの定義</span><br>
@@ -782,7 +784,6 @@
782784
インターフェイスは他のインターフェイスを &quot;implement&quot; することはできないが、他<br>
783785
のインターフェイスを &quot;extend&quot; することはできる。&nbsp;<a class="Constant" href="vim9class.html#E1381" name="E1381">E1381</a><br>
784786
<br>
785-
<br>
786787
<span class="PreProc">null オブジェクト</span><br>
787788
<br>
788789
変数がオブジェクトの型を持つように宣言されているが初期化されていない場合、値は<br>
@@ -791,7 +792,6 @@
791792
正しいかどうかをチェックできず、変数名が無効な場合でも &quot;Using a null object&quot;<br>
792793
エラーが発生する。&nbsp;<a class="Constant" href="vim9class.html#E1360" name="E1360">E1360</a>&nbsp;<a class="Constant" href="vim9class.html#E1362" name="E1362">E1362</a><br>
793794
<br>
794-
<br>
795795
<span class="PreProc">デフォルトコンストラクタ</span><br>
796796
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="Constant" href="vim9class.html#default-constructor" name="default-constructor">default-constructor</a><br>
797797
new() メソッドを使用せずにクラスを定義した場合は、自動的に new() メソッドが定<br>
@@ -1105,7 +1105,6 @@
11051105
トは正しい選択であるように思えた。これを new() と呼び出すことで、呼び出し元と<br>
11061106
呼び出されるメソッドの関係が明確になる。<br>
11071107
<br>
1108-
<br>
11091108
<span class="PreProc">コンストラクタのオーバーロードを行わない</span><br>
11101109
<br>
11111110
Vim script では、旧来と&nbsp;<a class="Identifier" href="vim9.html#Vim9">Vim9</a>&nbsp;の両スクリプトとも、メソッドのオーバーロードは<br>
@@ -1124,15 +1123,13 @@
11241123
のコンストラクタが使用されているかを確認するのが非常に簡単になる。引数の型も適<br>
11251124
切に確認できる。<br>
11261125
<br>
1127-
<br>
11281126
<span class="PreProc">メソッドのオーバーロードを行わない</span><br>
11291127
<br>
11301128
コンストラクタの場合と同じ理由である。多くの場合、引数の型が明らかではないた<br>
11311129
め、実際にどのメソッドが呼び出されているかを把握することが困難になる。メソッド<br>
11321130
に別の名前を付けるだけで、型チェックによって意図したとおりに動作することが確認<br>
11331131
される。これにより、実際には必要のないポリモーフィズムが排除される。<br>
11341132
<br>
1135-
<br>
11361133
<span class="PreProc">単一の継承とインターフェイス</span><br>
11371134
<br>
11381135
一部の言語は多重継承をサポートしている。これは場合によっては便利だが、クラスの<br>
@@ -1147,7 +1144,6 @@
11471144
たま一致したからといって、クラスがインターフェイスを実装しているとみなすメカニ<br>
11481145
ズムは脆弱で、分かりにくい問題を引き起こすため、やめておこう。<br>
11491146
<br>
1150-
<br>
11511147
<span class="PreProc">あらゆる場所で &quot;this.variable&quot; を使用する</span><br>
11521148
<br>
11531149
さまざまなプログラミング言語のオブジェクト変数には、多くの場合、場所に応じてさ<br>
@@ -1165,7 +1161,6 @@
11651161
使用される。シンプルで一貫性がある。クラス内部のコードを見る時にも、どの変数参<br>
11661162
照がオブジェクト変数で、どれがそうでないかが直接明らかになる。<br>
11671163
<br>
1168-
<br>
11691164
<span class="PreProc">クラス変数の使用</span><br>
11701165
<br>
11711166
&quot;static variable&quot; を使ってクラス変数を宣言するのはよくあることで、特に目新しい<br>
@@ -1178,7 +1173,6 @@
11781173
問題がある: クラス名はかなり長くなり、かなりのスペースが必要になることと、クラ<br>
11791174
ス名が変更されたときに、これらの場所もすべて変更する必要があることだ。<br>
11801175
<br>
1181-
<br>
11821176
<span class="PreProc">オブジェクト変数とクラス変数の宣言</span><br>
11831177
<br>
11841178
主な選択肢は、変数宣言のように &quot;var&quot; を使うかどうかである。TypeScript では使用<br>
@@ -1231,7 +1225,6 @@
12311225
を再利用している。そのため、一貫性を保つために、これらの宣言では &quot;var&quot; を必要<br>
12321226
とする。<br>
12331227
<br>
1234-
<br>
12351228
<span class="PreProc">&quot;ClassName.new()&quot; を使用してオブジェクトを構築する</span><br>
12361229
<br>
12371230
多くの言語では、オブジェクトの作成に &quot;new&quot; 演算子を使用するが、コンストラクタ<br>
@@ -1296,7 +1289,6 @@
12961289
&quot;protected&quot; キーワードを使用することもできる。まぁ、これはキーワードの数を減ら<br>
12971290
すためなのだが。<br>
12981291
<br>
1299-
<br>
13001292
<span class="PreProc">オブジェクト変数に private はない</span><br>
13011293
<br>
13021294
一部の言語では、オブジェクト変数へのアクセスを制御するいくつかの方法が提供され<br>

0 commit comments

Comments
 (0)