Ok so I have a package for a Memory System...I have Class Memory, MemEl and Test....I need some help editing my code..i cant figure out whats wrong with it. So if you could give me some pointers or help me edit my code, it would be very helpful...Thanks...also for my MemEl I am trying to make a constructor for MemEl(Int), MemEl(long), and MemEl(String)...I have MemEl(),MemEl(byte) and MemEl(short) done....can I do the Int and Long the same way as the short and byte?
Right now when I try to compile Memory or MemEl I get the error
javac MemEl.java
MemEl.java:9: missing return statement
}
^
MemEl.java:13: missing return statement
}
^
MemEl.java:17: missing return statement
}
^
So how would I fix this? All I am doing is trying to make constructors that convert ints to bytes and ints to shorts and so on so I am a little confused about this error.
Here is my code for Memory.java
class Memory{
//Here are my instance variables, MemEl[] which is an array of memory elements and I h\
ave my interger size, which is the amount of memory locations available.//
private MemEl[] memArray;
private int size;
//Here are my Constructors for my Memory system.//
public Memory(int s)
{size = s;
memArray = new MemEl[s];
for(int i = 0; i < s; i++)
memArray[i] = new MemEl();
}
public void write (int loc,int val)
{if (loc >=0 && loc < size)
memArray[loc].write(val);
else
System.out.println("Index Not In Domain");
}
public MemEl read (int loc)
{return memArray[loc];
}
public void dump()
{
for(int i = 0; i < size; i++)
if(i%1 == 0)
System.out.println(memArray[i].read());
else
System.out.print(memArray[i].read());
}
}
Here is my MemEl file code
class MemEl{
//MemEl is a memory element with all the characteristics of memory. It can write some val\
to some address and read some address and return the "elements" or value that are located\
at that memory location.//
private int elements;
public Memory MemEl()
{
elements = 0;
}
public Memory MemEl(byte b)
{
elements = b;
}
public Memory MemEl(short s)
{
elements = s;
}
public int read()
{
return elements;
}
public void write(int val)
{
elements = val;
}
}
Here is my code for Test
class Test{
public static void main(String[] args)
{
int size = 100;
Memory mymem;
mymem = new Memory(size);
mymem.write(98,44);
mymem.write(96,7);
MemEl x;
x = mymem.read(98);
System.out.println(mymem);
mymem.dump();
}
}