Answer:
Here is Automobile.java
class Automobile {   //class name
    private int ID, year, milesPerGallon, speed = 0;   // private member variables of Automobile of int type
    private String model, vinNo, make, color;   // private member variables of Automobile of String type
    public void setID(int ID){   //mutator method to set ID 
       if (ID >= 0 && ID <= 9999)  // checks ID should not be negative or more than 9999
       this.ID = ID;  
      else this.ID = 0;  }  //if ID is negative or greater than 9999 then set ID to 0
    public void setModel(String model){  // mutator method to set model 
        this.model = model;      }  
    public void setYear(int year){//
mutator method to set year
       if (year >= 2000 && year <= 2017)
//checks that year should not be earlier than 2000 or later than 2017
          this.ID = ID;
        else this.year = 0;     }
//if year is less than 2000 or greater than 2017 then set year to 0
    public void setVinNo(String vinNo){  //mutator method to set vin number 
        this.vinNo = vinNo;      }
    public void setMilesPerGalon(int milesPerGallon){  //mutator method to set miles per gallon 
       if (milesPerGallon >= 10 && year <= 60)  //checks that miles per gallon should not be less than 10 or more than 60
           this.milesPerGallon = milesPerGallon;
       else this.milesPerGallon = 0;      }
//if it is more than 60 or less than 10 then set miles per gallon to 0
    public void setSpeed(int speed){
//mutator method to set speed 
        this.speed = speed;      }
    public void setMake(String make){  //mutator method to set make
        this.make = make;    }
    public void setColor(String color){  //mutator method to set color
        this.color = color;    }
    public int getID()
//accessor method to get or access ID
    {return ID;}
//returns the current ID
    public String getModel()
//accessor method to get or access model
    {return model;}
//returns the current model
    public int getYear()//
accessor method to get or access year
    {return year;}
//returns the current year
    public String getVinNo()
// accessor method to get or access vin number
    {return vinNo;}
//returns the current vin number
    public int getMilesPerGallon()
//accessor method to get or access miles per gallon
    {return milesPerGallon;}
//returns the current miles per gallon
    public int getSpeed()
//accessor method to get or access speed
    {return speed;}
//returns the current speed
    public String getMake()
//accessor method to get or access make
    {return make;}
//returns the current make
    public String getColor()
//accessor method to get or access color
    {return color;}    //returns the current color
   public int Accelerate() {  //method that increase speed by 5
       setSpeed(speed + 5);
//calls set speed to add 5 to the speed field
       return speed;    }
//returns the speed after increasing 5
   public int Brake() {
//method that decreases speed by 5
       setSpeed(speed - 5);//calls set speed to subtract 5 from the speed field
       return speed;    }
//returns the speed after decreasing 5
   public int Accelerate(int spd) {  //overloading methods for Accelerate()that accepts a single parameter spd 
       setSpeed(speed + spd);  //increases speed up to specified value of spd
       return speed;    }
   public int Brake(int spd) {  //overloading methods for Brake()that accepts a single parameter spd 
       setSpeed(speed - spd);
//decreases speed up to specified value of spd
       return speed;    }
    public Automobile(int ID, String make, String model, int year, String vinNo, int milesPerGallon, int speed, String color){  //constructor  that accepts arguments for each field value and uses the set methods to assign the values
       setID(ID);  
       setModel(model);  
       setYear(year);  
       setVinNo(vinNo);
       setMilesPerGalon(milesPerGallon);  
       setSpeed(speed);  
       setMake(make);  
       setColor(color);      } }
Explanation:
Here is TestAutomobiles.java
public class TestAutomobiles {   //class name
   public static void main(String args[]) {  //start of main method
     Automobile auto = new Automobile(123, "ABC", "XYZ", 2010, "MMM", 30, 150, "White");   //creates an object of Automobile class and calls its constructor passing the values for each of the fields
  System.out.println("Initial Speed: " + auto.getSpeed());  //calls getSpeed method to get the current speed using object auto. The current speed is 150
  System.out.println("Speed after applying acceleration: " + auto.Accelerate());   //calls Accelerate() method to increase the current speed to 5
  System.out.println("Speed after applying brake: " + auto.Brake());  //calls Brake() method to decrease the current speed to 5
    System.out.println("Speed after applying acceleration: " + auto.Accelerate(180));  //calls overloading Accelerate() method to increase the current speed to 180
      System.out.println("Speed after applying brake: " + auto.Brake(50));     }  } //calls overloading Brake() method to decrease the current speed to 50
//The screenshot of the output of the program is attached.