メソッド bを持つクラス Aを含むライブラリX があり、そのライブラリ X はGPL ライセンスの下で公開されているとします。
public class A {
public void b() {
// this is an example of b method's body. But assume that the body of method b
// is very complex
System.out.println("operation a");
System.out.println("operation b");
System.out.prinltn("operation c");
}
}
ライブラリ X を使用していて、メソッド b の動作に似た動作が必要であると仮定しますが、クラス A の単純な拡張とそれらのメソッドのいくつかをオーバーライドするだけでは達成できない追加が 1 つあります。
最初の質問は次のとおりです。以下に示す方法でクラス A を拡張し、メソッド b をオーバーライドしてもよろしいですか。それは GPL ライセンスで本当に許可されていますか。
public class AExt extends A {
public void b() {
// this is an example of b method's body. But assume that the body of method b
// is very complex
System.out.println("operation a");
System.out.println("operation b");
doOperationINeed();
System.out.prinltn("operation c");
}
}
2 番目の質問は、一般的に使用されているオープンソース ライセンスのうち、そのような拡張を許可しているものと許可していないものはどれですか?