Home > front end >  How to access variables in another class, Java?
How to access variables in another class, Java?

Time:12-28

I have multiple classes of the same package and need to access some variables in different classes. How would I access carName from MenuDisplay in the Car class? feels like I'm almost there but just can't figure it out. Thanks

package carrentaltester;

import java.io.File;
import java.io.FileNotFoundException;
import java.util.Scanner;

public class MenuDisplay {

    public static void displayCarList() {

        String CSVfileName = "CarList.csv";
        int counter = 0;
        try { //open and read the CSV file
            File file = new File(CSVfileName);
            Scanner input = new Scanner(file);
            System.out.format("%-8s%-18s%-10s%-16s%-16s%-16s\n",
                    "Car No.", "Car Name", "Seats", "Transmission", "Car Type",
                    "Rate/Day($");
            System.out.format("%-8s%-18s%-10s%-16s%-16s%-16s\n", "-------",
                    "-------", "----- ", "------------", "---------",
                    "--------");
            while (input.hasNextLine()) {
                String line = input.nextLine();
                counter  ;
                String fields[] = line.split(",");
                String carNumber = fields[0];
                String carName = fields[1];
                String seats = fields[2];
                String transmission = fields[3];
                String carType = fields[4];
                String ratePerDay = fields[5];

                System.out.format("%-8s%-18s%-10s%-16s%-16s%-16s\n",
                        carNumber, carName, seats, transmission, carType,
                        ratePerDay);
            }
package carrentaltester;


public class Car {
    
    double carRate;
    String carName; 
        
    MenuDisplay carInfo = new MenuDisplay();
    
}

CodePudding user response:

Create an object of Car class and set values. Then you can access.

CodePudding user response:

The carName is a field variable of a Car object. You must instantiate a Car at first, and then access its carName field.

Car car = new Car();

(...)

car.carName = fields[1];

Where you should instantiate a Car object depends on the situation. I would pass it as an argument to displayCarList.

public static void displayCarList(Car car) {
    (...)
    car.carName = fields[1];
    (...)
}

Usage:

public class Car {
    double carRate;
    String carName;

    public static void main(String[] args) {
        Car car = new Car();
        MenuDisplay carInfo = new MenuDisplay(car);
    }
}
  •  Tags:  
  • java
  • Related