1

私は処理中の簡単なスケッチ(Java の一種) をプログラミングしており、このコードを使用してフォルダーの jpg をスキャンしています。関数として使用できるようにしたいので、次のように使用できます。

String[] images;

void setup() {
  images = scanForJpgs();
}


String[] scanForJpgs() {
  // set target folder
  java.io.File folder = new java.io.File(dataPath(""));

  // set filter (which returns true if file's extension is .jpg)
  java.io.FilenameFilter jpgFilter = new java.io.FilenameFilter() {
    boolean accept(File dir, String name) {
      return name.toLowerCase().endsWith(".jpg");
    }
  };

  // list files in target folder, passing the filter as parameter
  String[] filenames = folder.list(jpgFilter);

  return filenames;
}

ただし、「 FilenameFilter から継承されたメソッドの可視性を減らすことはできません」というエラーがスローされます。これを関数のように使用できるように修正するにはどうすればよいですか?

4

1 に答える 1

2

publicpackage-private ではなくメソッドを宣言します。

public boolean accept(File dir, String name) {

読む:クラスのメンバーへのアクセスを制御する

于 2013-10-28T20:22:26.697 に答える