Attualmente sto leggendo il seguente tutorial e sono arrivato da qui link
Forse non dovrei pensare a questa domanda ora perché il tutorial non lo ha portato, ma ho una questione di buone pratiche. Secondo il tutorial fino a questo punto, se voglio definire un oggetto e i suoi metodi, posso farlo all'interno di una classe, o posso prenderne alcune parti che mi aspetto che condividano in comune con altri oggetti e metterlo in una super classe. Oppure, da quello che capisco, posso fare il primo ma ritarda definire il mio metodo fino a MAIN usando invece la parola chiave interface. Ho due domande.
Se ho una struttura di classe superclass- >, è anche possibile utilizzare una sorta di "superinterfaccia" invece di ritardare parti della definizione di metodi fino al metodo MAIN? (Si prega di correggere la mia terminologia se sapete cosa intendo, e sapere che non sto parlando correttamente.)
Qualunque cosa sia possibile, quando è opportuno utilizzare ognuno dal punto di vista dell'efficienza e anche di qualcuno che leggerebbe il mio codice?
Sono un principiante. Grazie!
Modifica: codice "Esempio" incluso (come scritto nell'IDE di Netbeans) per il completamento.
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package javaapplication3;
/**
*
* @author Jeff
*/
class percolation{
int site1 = 1;
int site2 = 0;
int site3 = 1;
void changesite1(int newValue){
site1 = newValue;
}
void changesite2(int newValue){
site2 = newValue;
}
void changesite3(int newValue){
site3 = newValue;
}
void printStates(){
System.out.println("site1:" + site1 + " site2:" + site2 + " site3:" + site3);
}
}
class extendedpercolation extends percolation{
int site4 = 0;
void changesite4(int newValue){
site4 = newValue;
}
void printStates1(){
System.out.println("site1:" + site1 + " site2:" + site2 + " site3:" + site3 + " site4:" + site4);
}
}
class percolationdemo{
public static void main(String[] args) {
extendedpercolation perc1 = new extendedpercolation();
extendedpercolation perc2 = new extendedpercolation();
// Invoke methods on
// those objects
perc1.changesite1(0);
perc1.changesite2(0);
perc1.changesite3(0);
perc1.changesite4(0);
perc1.printStates1();
perc2.changesite1(1);
perc2.changesite2(0);
perc2.changesite3(1);
perc2.changesite4(1);
perc2.printStates1();
}
}