Forum » Programiranje » java dedovanje
java dedovanje
xsenon ::
ojla,
a mi lahko nekdo pove kje sm nraedu napako da mi javlja error (do sedaj se nism kj dost ukvaju z dedovanjem)
napako mi javi tamkjer želim napolnit arraylist z elementi in sicer javi mi: No enclosing instance of type izpitna_junij is accessible. Must qualify the allocation with an enclosing instance of type izpitna_junij (e.g. x.new A() where x is an instance of junij).
mislu sm .add ne .addall
a mi lahko nekdo pove kje sm nraedu napako da mi javlja error (do sedaj se nism kj dost ukvaju z dedovanjem)
import java.lang.reflect.Array; import java.util.ArrayList; import java.util.Collection; public class junij { public static void main(String[] args) { ArrayList<Avto> a = new ArrayList<Avto>(); //napolni array list a.add(new Avto(12)); } class Avto{ int cena; public Avto(int cena){ this.cena=cena; } public int cenaAvta(){ return cena; } } class TujAvto extends Avto{ int carina; public TujAvto(int carina,int cena) { super(cena); this.carina=carina; } public int cenaAvta(){ return cena+carina; } } }
napako mi javi tamkjer želim napolnit arraylist z elementi in sicer javi mi: No enclosing instance of type izpitna_junij is accessible. Must qualify the allocation with an enclosing instance of type izpitna_junij (e.g. x.new A() where x is an instance of junij).
mislu sm .add ne .addall
etpot - Exploit The Power Of Technology
- spremenil: xsenon ()
phyro ::
a.addall() sprejme collection, da nisi ti mislu uporabit a.add()
Zgodovina sprememb…
- spremenil: phyro ()
KaRkY ::
Daj razreda Avto in TujAvto vsakega v svojo datoteko in ju označi da sta public. Sedaj pa če prav vidim on hoče met instanco razreda junij zato da bo lahko kreiral instanco razreda Avto.
When you look long into an abyss, the abyss looks into you
arjan_t ::
"inner" razreda morata biti static
si vmes kaj kodo spreminjal? ker napaka ki si jo napisal nima smisla
si vmes kaj kodo spreminjal? ker napaka ki si jo napisal nima smisla
Spura ::
Če inner razred ni static, potem rabis najprej eno instanco parent razreda (enclosing class), da ga lahko instanciras. V metodah parent razreda je ob klicu new inner class implicitno izbrana instanca parent razreda "this". Ker pa ti instanciras inner class v metodi main, ki je staticna, mu rabis povedat za katero instanco gre.
Opcije so:
ali pa:
Opcije so:
public static void main(String[] args) { junij parent = new junij(); // btw classi so vedno z veliko ArrayList<Avto> a = new ArrayList<Avto>(); a.add(parent.new Avto(12));
ali pa:
public static void main(String[] args) { junij parent = new junij(); parent.dodajAvto() } private List<Avto> dodajAvto() { List<Avto> a = new ArrayList<Avto>(); a.add(new Avto(12)); }
xsenon ::
hvala za odgovore sedaj mi zadeva deluje:) Hvala za razlago.
etpot - Exploit The Power Of Technology
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | [Android] Nov tip shranjevanja slikeOddelek: Programiranje | 2173 (1297) | urosz |
» | [Java] Podatkovni tipOddelek: Programiranje | 3769 (3421) | piki12 |
» | [Java] Sortiranje razredovOddelek: Programiranje | 1440 (1187) | Spura |
» | [Java] CastanjeOddelek: Programiranje | 1517 (1372) | fiction |
» | Rekurzija v javi z ArrayListOddelek: Programiranje | 1565 (1408) | marjan_h |