無印メソッド
日本語 | 無印メソッド |
英語 | access modifier omitted method |
ふりがな | むいんめそっど、むじるしめそっど |
フリガナ | ムインメソッド、ムジルシメソッド |
public private protectedのどの修飾子も付けられていないメソッド。
メソッドのデフォルトのアクセスコントロール。便宜上「無印」と表記されるが、特定の名称はない。
一見「public private protectedのどれか」が暗黙的に付けられているかのように見えるが、実はそのどれとも異なる。
無印メソッドは、同パッケージのクラスのみから使用できる。他のパッケージのクラスからは使用できない。
非常に紛らわしいく、しかも使い道が特にないため、できる限り使用を控えた方がよい。
メソッドのデフォルトのアクセスコントロール。便宜上「無印」と表記されるが、特定の名称はない。
一見「public private protectedのどれか」が暗黙的に付けられているかのように見えるが、実はそのどれとも異なる。
無印メソッドは、同パッケージのクラスのみから使用できる。他のパッケージのクラスからは使用できない。
非常に紛らわしいく、しかも使い道が特にないため、できる限り使用を控えた方がよい。
参考サイト
- (参考サイトはありません)
// Sample.java
// testパッケージのOtherPackageClassクラスを使用します。
import test.OtherPackageClass;
public class Sample
{
public static void main( String[] args )
{
// NormalClassクラスを使います。
NormalClass normalClass = new NormalClass();
normalClass.output();
// NormalClass#output()
// 他パッケージにあるクラスの
// 無印メソッドは呼び出せません。
OtherPackageClass otherPackageClass = new OtherPackageClass();
// otherPackageClass.output();
// コンパイルエラー:
// メソッド output() は型 OtherPackageClass で不可視です。
}
}
/**
* 普通のクラス。
*/
class NormalClass
{
/**
* 無印メソッド。
*/
void output()
{
System.out.println( "NormalClass#output()" );
}
}
// test/OtherPackageClass.java
package test;
/**
* 普通のクラス。
*/
public class OtherPackageClass
{
/**
* 無印メソッド。
*/
void output()
{
System.out.println( "OtherPackageClass#output()" );
}
}
// testパッケージのOtherPackageClassクラスを使用します。
import test.OtherPackageClass;
public class Sample
{
public static void main( String[] args )
{
// NormalClassクラスを使います。
NormalClass normalClass = new NormalClass();
normalClass.output();
// NormalClass#output()
// 他パッケージにあるクラスの
// 無印メソッドは呼び出せません。
OtherPackageClass otherPackageClass = new OtherPackageClass();
// otherPackageClass.output();
// コンパイルエラー:
// メソッド output() は型 OtherPackageClass で不可視です。
}
}
/**
* 普通のクラス。
*/
class NormalClass
{
/**
* 無印メソッド。
*/
void output()
{
System.out.println( "NormalClass#output()" );
}
}
// test/OtherPackageClass.java
package test;
/**
* 普通のクラス。
*/
public class OtherPackageClass
{
/**
* 無印メソッド。
*/
void output()
{
System.out.println( "OtherPackageClass#output()" );
}
}
// Sample.java // testパッケージのOtherPackageClassクラスを使用します。 import test.OtherPackageClass; public class Sample { public static void main( String[] args ) { // NormalClassクラスを使います。 NormalClass normalClass = new NormalClass(); normalClass.output(); // NormalClass#output() // 他パッケージにあるクラスの // 無印メソッドは呼び出せません。 OtherPackageClass otherPackageClass = new OtherPackageClass(); // otherPackageClass.output(); // コンパイルエラー: // メソッド output() は型 OtherPackageClass で不可視です。 } } /** * 普通のクラス。 */ class NormalClass { /** * 無印メソッド。 */ void output() { System.out.println( "NormalClass#output()" ); } } // test/OtherPackageClass.java package test; /** * 普通のクラス。 */ public class OtherPackageClass { /** * 無印メソッド。 */ void output() { System.out.println( "OtherPackageClass#output()" ); } }