あなたの質問に対する答えは「はい」です。クラスファイルを置き換えることはできますが、他の依存関係が変更されていないことを確認する必要があるという点で、やや複雑です。
たとえば、コンパイルしているクラスに、他のクラスで使用されているメソッドのメソッドシグネチャの変更が含まれている場合は、それらも置き換える必要があります。public、protected、またはdefaultメソッドのメソッドシグネチャが変更されない限り、問題はありません。
補足として、これが頻繁に行うことである場合、オブジェクトが個々のパラメーターではなくメソッドに渡されることが多い理由をすぐに理解できます。
public MyObject getObject(MyObject2 mySecondObject)
vs
public MyObject getObject(int a, int b, int c)
メソッドに渡されたオブジェクトに新しいプロパティを追加する必要がある場合、メソッドシグネチャは変更されませんが、メソッドシグネチャ自体にパラメータを追加または削除すると、すべての依存関係に連鎖反応が発生するため、これらのクラスファイルもコンパイルして置き換えます。
強調する最後のポイントとして、プライベートメソッドまたはプライベート変数に加えた変更、あるいはメソッドの定義でさえ、他のクラスファイルに影響を与えたり影響を与えたりしないことに注意してください。重要なのは、入力と出力が常に同じデータ型を受け取り、返すという点で、メソッドが他のクラスと持っている契約を守ることだけです。
これは、インスタンス変数のカプセル化の重要性と、それらの依存関係が他のクラスからどのように隠されているかを強調しています。