Java is gaining popularity in software development. it is widely used in network computing and embedded systems because it offers several key advantages such as safe programming, code verficantion and cheking, automatic memory management, and significant support from the computing industry. this paper is aimed to evalute the impact of different object orders in memory on java application performance. this work is motivated by the facts that java programs create many objects dynamically on the heap but never freed explicitly by the code. a java virtual machine (JVM) implements a garbage collector to aut matically collect objects that are no longer accessed by the program and to make the space available for new object allocations when the heap is full. once the garbage collection is finished, the live objects remain in the heap.these objects might be spread across the memory since they are not necessarily resided in adjacent memory locations. if the objects are compacted, their ordering might not match with the traversal order of the program. this means that the remaining live objects in memory after gerbage collection are sensitive to cahe misses and TLB misses and the application execution time might suffer from the penalty of poor spatial locality of objects in memory. to show how the order of objects in memory affects java application performance, we implemented two different copying order schemes at garbage collection time: bread frist (BF) scheme and depth first (DF) scheme. our expriment results show that java execuation time, cache misses and DTLB misses vary by 3-16%, 5-20% and 9-21% respectively due to BF and DF schemes.