引数の説明
メソッド,プロパティまたはフィールド. |
エラーの原因となったメソッド名,プロパティ名,またはフィールド名. |
例
public class CS5726 {
private int M5726() {
return 1;
}
}
000001 IDENTIFICATION DIVISION.
000002 PROGRAM-ID. P5726.
000003 ENVIRONMENT DIVISION.
000004 CONFIGURATION SECTION.
000005 REPOSITORY.
000006 CLASS CS5726.
000007 DATA DIVISION.
000008 WORKING-STORAGE SECTION.
000009 01 WOBR OBJECT REFERENCE CS5726.
000010 01 ANS PIC S9(9) COMP-5.
000011 PROCEDURE DIVISION.
000012 INVOKE WOBR "M5726" RETURNING ANS
000013 END PROGRAM P5726.
P5726.cob (12) : JMN5726I-S メソッドM5726はこのクラスまたはプログラムから参照できません.
詳細な説明
指定したメンバ(メソッドまたはプロパティ/フィールド)が,現在解析中のソース単位からアクセスできない属性を持っています.このエラーが出力される原因として以下があります.
PRIVATEメンバを,外部から参照しようとした.
INTERNALメンバを,別のアセンブリファイルに含まれるソース単位から参照しようとした.
PROTECTEDメンバを,派生クラスでないソース単位で参照しようとした.または派生クラス以外の型を通して参照しようとした.
以下の場合は対応することが可能です.
既存のnetmoduleファイル内に存在するINTERNALメンバを参照したい場合は,COBOLcコマンドの/addmoduleオプションに該当のファイルを指定することで,同一アセンブリとしての参照が可能になります.
自クラス内でPROTECTEDメンバをOVERRIDEしていて,かつ,OVERRIDE元の(親クラスの)メンバを参照したい場合は,定義済み一意名SUPERを使います.