Get startedGet started for free

Public class fields

So far, during this course, you have created properties and methods without specifying access modifiers. You will explicitly specify the public access modifier for the appropriate properties within your code.

NOTE: In Java, properties without explicit access modifiers are package-private by default, allowing access similar to public. Also, only one class per file can be explicitly marked as public.

This exercise is part of the course

Introduction to Object-Oriented Programming in Java

View Course

Exercise instructions

  • Mark the model, and year properties of the Car class public by adding the public access modifiers to them.
  • Turn both the turnEngineOn and calculateMPG methods public by adding the public access modifiers to them.

Hands-on interactive exercise

Have a go at this exercise by completing this sample code.

public class Main {  

    static class Car {
        public String color;
        // Make "model" and "year" public
        ___ String model;
        ___ int year;

        Car(String color, String model, int year) {
            this.color = color;
            this.model = model;
            this.year = year;
        }

        // Make "turnEngineOn" method public
        ___ void turnEngineOn() {
            System.out.println("engine is on");            
        }

        // Make "calculateMPG" method public
        ___ int calculateMPG(int milesDriven, int gallonsUsed) {
            return milesDriven / gallonsUsed;
        }
    }

    public static void main(String[] args) {
        Car myCar = new Car("red", "camry", 2022);
        System.out.println(myCar.calculateMPG(180, 20));
    }
}
Edit and Run Code