実行する実際のコードを独自のメソッドにリファクタリングし、Init メソッドでそのコードを呼び出し、create メソッドでもそのコードを呼び出すようにします。
現時点では、オブジェクトが適切に設計されていないようです。メソッドをより小さく、より制約のある単位に分解してみてください。
編集:
私の答えはまだ立っていると思います。
親コンポーネントの Init メソッドが何らかの処理を行う場合は、その処理を新しいメソッド (「initDoStuff()」など) に移動し、init メソッドにそのメソッドを呼び出させます。
次に、create メソッドで init の代わりに initDoStuff() メソッドを呼び出すようにします。
ColdFusion は動的に型付けされる言語であり、異なるパラメーターを受け入れるためだけにメソッドをオーバーライドする必要はありません。他の方法でそれを行うことができます。
CF は、引数のシグネチャに基づいてメソッドを選択できません。したがって、このような状況が発生した場合は、別の方法で対処する必要があります。
基本的に、メソッドをオーバーライドして引数の型を変更するという考え方は、ColdFion では実際には有効ではありません。
コンポーネント A:
<cffunction name="init" access="public" output="false">
<cfargument name=... ...>
<cfreturn initDoSomething(argumentCollection=arguments)>
</cffunction>
<cffunction name="initDoSomething" access="package" output="false">
{do stuff}
<cfreturn {whatever}>
</cffunction>
コンポーネント B:
<cffunction name="create" access="package" output="false">
<cfset {something} = initDoSomething({whatever arguments})>
<cfreturn {whatever}>
</cffunction>