型付きラケットから型付けされていないラケットにクラスをオーバーライドしたい場合は可能ですか?可能であれば、以下のタイプのラケットクラスを型なしのラケットクラスにオーバーライドする方法を教えてもらえれば、とても感謝します。私はテキストを "これはフレームです"から "これはフレームではありません"に置き換えます。 注:テキストを置き換える他のオプションがある場合は教えてください。あなたの型指定されたコードで型付きラケットでオーバーライド
(: frame (Instance (Class #:implements Frame%
(augment [on-close (-> Void)]))))
(define frame
(instantiate
(class frame%
(augment*
[on-close
(lambda()
(send board-canvas stop-timer)
(inner (void) on-close))])
(super-instantiate()))
("this is a frame")))
「入力されたラケットからタイプされていないラケットにクラスをオーバーライドする」と言うときに、あなたが何を求めているのか正確にはわかりません。型付きラケットで定義された型の型なしサブクラスを作成することを意味しますか?または、あなたの質問のコードを型なしのラケットに変換したいですか?または、メソッドをオーバーライドするクラスを作成したいだけですか?それとも、他に何かを求めていますか? –
このクラスは型付きラケットファイルにあります。このファイルを型なしのラケットファイルに含める必要があります。このコードをタイプのないラケットファイルに変換し、他のテキストと同じテキストを "これはフレームです"に置き換えることができます。したがって、タイプのないファイルを実行すると、置き換えられたテキストが出力として表示されます。 –
どういう意味ですか?あなたの質問のコードはクラスを定義していません。オブジェクトを定義します。 ''これはフレームです」 '' textはクラスではなくオブジェクトのプロパティです。それはあなたが意図したことですか、その引数のデフォルト値を持つクラスを作成することを意味しましたか? –