Sie wollen nur die überschriebene Version ein anderes Trennzeichen für die Scanner
verwenden? Ich schlage vor, einen Blick auf die Scanner API zu werfen, da es dokumentiert, wie man ein anderes Begrenzermuster verwendet.
public boolean openRead() throws FileNotFoundException
{
boolean result = super.openRead();
sc.useDelimiter(DELIMITERS);
return result;
}
bearbeiten
Oder vielleicht nur wissen Sie nicht, was überwiegende in Java ist, und dass für Sie sollten mehr in den Java tutorials lesen.
Aber im Grunde, wenn Sie etwas Klasse hatte:
public class ScannerUserParent
{
protected Scanner sc;
private String filename = null;
// all that other stuff like constructors...
public boolean openRead() throws FileNotFoundException
{
sc = new Scanner(new File(fileName));
if (fileName != null)
{
return true;
}
else
{
return false;
}
}
}
Sie dann diese Klasse eine Unterklasse (oder extends
):
public class ScannerUserChild extends ScannerUserParent
{
protected final String DELIMITERS = "[\\s[^'a-zA-Z]]";
// stuff like constructors...
public boolean openRead() throws FileNotFoundException
{
boolean result = super.openRead(); // we are calling the parent's openRead() method to set up the Scanner sc object
sc.useDelimiter(DELIMITERS);
return result;
}
}
Allerdings gibt es andere Dinge, die Sie tun genau das verhindern kann, Dies. Wenn beispielsweise das Element sc
der Bereich private
ist, kann die Unterklasse es nicht direkt auf die Weise verwenden, die ich gezeigt habe.
In meinem Beispiel verwendet sc
protected
Zugriff, so dass die Klasse und ihre Unterklassen es verwenden können.
Im Fall gibt es eine private
Scanner
, und die Eltern unter der Annahme hat eine getScanner()
Methode, die Ihnen Scanner
zurückgibt, können Sie dies tun:
public boolean openRead() throws FileNotFoundException
{
boolean result = super.openRead(); // we are calling the parent's openRead() method to set up the Scanner sc object
Scanner sc = getScanner();
sc.useDelimiter(DELIMITERS);
return result;
}
Drei Monate und vier vorherigen Fragen in Bezug Sie wirklich, wirklich sollte Formatieren Sie den Code jetzt korrekt, anstatt andere zu bereinigen. Rechts neben dem Feld "Frage stellen" befindet sich ein Link mit der Aufschrift "Wie formatiere ich?". Es lohnt sich, es zu lesen, es zeigt Ihnen genau, was Sie in einer schnell zu betrachtenden Liste tun müssen. Die erweiterte Version ist hier: http://stackoverflow.com/editing-help –
Ihr Titel und Ihre Frage scheinen nicht übereinzustimmen, oder ich könnte nur falsch verstehen, was Sie fragen. – jzd