Bunu daha önce yaptığımdan eminim, bu yüzden neden bir hataya yol açtığından emin değilim. Bu hata alıyorum edilir:Java - Bir yöntem çağrısı içinde bir nesne oluşturma
$ javac Zombie.java
Zombie.java:51: error: non-static variable this cannot be referenced from a static context
array.add(new Point(p.d0-1, p.d1));
^
Ben yeni bir nesne tanımlamak nereye işaret, o yüzden statik bir şekilde bir yöntem çağrısı zaman içinde yapmanız izin yok? Bir değişken tanımlayıp onu iletmem gerekiyor mu? Bu doğru bir bağlama için ....
daha fazla zaman alır ve çok daha dağınık olurdu Çünkü:
- dizi türü ArrayList olan
- Nokta Ben tanımlanmış bir sınıftır. Kurucu doğru çağrılır.
- p, Point örneğidir. İki alanı vardır: d0 ve d1 (X ve Y ile karışıklığı hafifletmek için 0 ve boyut 1).
"Point" yuvalanmış bir sınıf mıdır? Eğer öyleyse, beyannameye "statik" kelimesini ekleyin. –
Bu kod satırında daha fazla bağlam olduğunu düşündüğümde burada görüyoruz. * Genel olarak * bir nesnenin örneğini bildirememenizin bir nedeni yoktur. – David
Kodunuzu buraya gönderin – Ramanlfc