I wrote a shopping cart program in Java with unit test, but when I run the program its giving me an error. What it means cannot find the symbol. Its giving me the following error:
java testShoppingCart.java
testShoppingCart.java:8: error: cannot find symbol
ShoppingCart obj = new ShoppingCart();
^
symbol: class ShoppingCart
location: class testShoppingCart
testShoppingCart.java:8: error: cannot find symbol
ShoppingCart obj = new ShoppingCart();
^
symbol: class ShoppingCart
location: class testShoppingCart
2 errors
error: compilation failed
Here is my program : The main file: ShoppingCart.java
import java.util.Scanner;
public class ShoppingCart {
//class representation
private int itemCount;
private String[] items = new String[20];
private int itemRemoved = 0;
Scanner in = new Scanner(System.in);
public ShoppingCart() {
}
public ShoppingCart(String[] items) {
this.items = items;
}
//methods..
public void addToCart(String newItem) {
itemCount++;
String[] newItems = new String[itemCount];
for(int i = 0; i < itemCount-1; i++) {
newItems[i] = items[i];
}
newItems[itemCount-1] = newItem;
items = newItems;
}
public void DropFromCart(String dropItem) {
String[] temp = items;
for(int i = 0; i < items.length; i++) {
if(items[i].equals(dropItem)) {
for(int j =i; j < items.length-1; j++) {
temp[j] = items[j+1];
}
String[] newItems = new String[items.length-1];
for(int k = 0; k < items.length-1; k++) {
newItems[k] = temp[k];
}
items = newItems;
}
}
itemRemoved++;
itemCount--;
}
public void getItems() {
System.out.print("List of items : ");
for(int i=0; i < items.length; i++) {
System.out.print(items[i] +", ");
}
System.out.print("\n");
}
public int getNoOfItems() {
return itemCount;
}
}
The test file: testShoppingCart.java
import java.util.Scanner;
public class testShoppingCart {
//Main method...
public static void main(String [] args) {
//create Scanner object
Scanner in = new Scanner(System.in);
ShoppingCart obj = new ShoppingCart();
while(true) {
//enter item
System.out.print("Enter the name of the item : ");
String item;
item = in.next();
obj.addToCart(item);
//remove item?
System.out.print("Any item to remove from cart? y/n ");
char yn = in.next().charAt(0);
if(yn == 'y') {
//enter item to be removed
System.out.print("Enter item to remove from cart : ");
String item1;
item1 = in.next();
obj.DropFromCart(item1);
obj.getItems();
//Continue shopping or not?
System.out.println("Continue Shopping? : y/n ");
char yn2 = in.next().charAt(0);
if(yn2 == 'y') {
continue;
}
else if(yn2 == 'n') {
//display total items
System.out.println("Total items shopped : "+obj.getNoOfItems());
System.out.print("Thank You, Please shop again!!!");
break;
}
}
else if (yn == 'n') {
obj.getItems();
System.out.print("Continue Shopping? : y/n ");
char yn3 = in.next().charAt(0);
if(yn3 == 'y') {
continue;
}
else if(yn3 == 'n') {
//total number of items shopped
System.out.println("Total items shopped : "+obj.getNoOfItems());
System.out.print("Thank You, Please shop again!!!");
break;
}
}
else {
continue;
}
}
}
}
Can someone please help me with the error. Thanks in advance!