public class Tossuelain extends Alkuelain{
private char sukupuoli;
public Tossuelain(){ //luo tohvelieläimen, jolle arvotaan perimä.
this.YKSILOLLISYYS = otuslaskuri;
++Alkuelain.otuslaskuri;
this.perima = new char[ perimanKoko];
for (int i=0; i < this.perima.length; ++i){
this.perima[i] = perusemas[(int) Math.random()*4];
}
}
public Tossuelain(char[] perima){ //luo alkueläimen annetulla perimällä. Määrittele mitä tehdään, jos perimä ei ole kelvollinen.
this.YKSILOLLISYYS = otuslaskuri;
++Alkuelain.otuslaskuri;
//this.perima = new char[ perimanKoko];
for (int i=0; i < perima.length; ++i){
if (this.perima[i] != 'A' || this.perima[i] != 'C' || this.perima[i] != 'G' || this.perima[i] != 'T')
this.perima[i] = perusemas[(int) Math.random()*4];
}
}
public Tossuelain pariudu(Tossuelain toinen) { //palauttaa arvonaan joko jälkeläisen tai arvon null.
/* if (this.sukupuoli = 'A' && toinen.sukupuoli = 'G') lapsi = 'A';
* if (this.sukupuoli = 'A' && toinen.sukupuoli = 'T') lapsi = 'C';
* if (this.sukupuoli = 'C' && toinen.sukupuoli = 'G') lapsi = 'G';
* if (this.sukupuoli = 'C' && toinen.sukupuoli = 'T') lapsi = 'T';
*/
}
public char vaihdaNukleotidi(int indeksi, char uusi) { //vaihtaa tossueläimen yhden nukleotidin toiseksi kohdasta indeksi. Arvonaan metodi palauttaa vanhan, korvatun nukleotidin. Määrittele, mitä tehdään, jos parametrit ovat virheellisiä.
//if int indeksi == 30 ...muuttaa sukupuolinukleotidiä.
//pitää kopioida alkuperäinen perimä ja muuttaa tietyssä kohdassa olevaa nukleotidiä ja antaa muutettu taulukko parametrinä Tohvelielain(char []):iin
}
public String toString() { //muodostaa selkeän merkkiesityksen tossueläimestä.
return "Tohvelieläin "+this.YKSILOLLISYYS+".: "+this.perimalista+this.sukupuoli;
// A- ja C-tossut naaraita, G- ja T-tossut koiraita
}
}