Out of memory
The following java method/function causes the jvm to run out of memory:
public class Udforsk { //Obekter //Kamp kamp = new Kamp(); //IO //opret et Tastatur-objekt Tastatur tast = new Tastatur(); int svar; // //opret et Sted-objekt Sted sted = new Sted(); //Karakteregenskaber - fjende String fjende_navn = ""; int fjende_styrke = 10; int fjende_intelligens = 10; int fjende_liv = 100; public void udforsk() { //Sker der noget spændende? if(Math.random()>0.5) { //Nope System.out.println("Du finder intet interessant"); sted.skoven(); } //Det gør der else { if(Math.random()>0.5) { //Fjendetype 1 fjende_navn = "blåmejse"; fjende_styrke = 1; fjende_intelligens = 2; fjende_liv = 5; } else { //Fjendetype 2 fjende_navn = "ulv"; fjende_styrke = 6; fjende_intelligens = 4; fjende_liv = 30; } System.out.println("Du møder en" + fjende_navn); //Er man opdaget? if (Math.random()>0.5) { //Fjenden har ikke opdaget spilleren endnu, //og man kan derfor nå at træffe et valg System.out.println("Den har endnu ikke opdaget dig"); System.out.println("Hvad vil du?"); System.out.println("1 - Angribe"); System.out.println("2 - Flygte"); svar = tast.læsHeltal(); if(svar==1) { //kamp.angrib(); } else if(svar==2) { //kamp.flygt(); } else { System.out.println(svar + " er ikke et gyldigt svar"); } } //Fjenden har opdaget spilleren og angriber else { } } } } |
Re: Out of memory
Does "Tastatur" or "Sted" create a "Udforsk" object (thus creating an infinite recursive loop)?
You probably shouldn't be "new"ing other objects inside Udforsk unless you know that those object (or objects created inside those objects, or objects created inside those objects created inside those objects, etc) don't wind up creating a Udforsk object (making it infinitely recursive). botman |
Re: Out of memory
Bah infinite loops are no problem in linux!
Quote:
|
Re: Out of memory
Quote:
How do I access functions inside theese classes if I am not allowed to create a new instace of them? As far as I know the only way to run methods from other classes is to do it this way. |
Re: Out of memory
You could use static methods so you don't actually need an instance of the class. Thjere seems nothing wrong with your code, though we don't have enough information ( also english comments/var names would be nice :)) .
Check you aren't creating objects in a loop when it isn't really needed. |
Re: Out of memory
Memory leak?
|
All times are GMT +2. The time now is 04:19. |
Powered by vBulletin® Version 3.8.2
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.