Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 941939
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 15, 20262026-05-15T22:11:35+00:00 2026-05-15T22:11:35+00:00

I know it is not a good coding practice to declare a method as

  • 0

I know it is not a good coding practice to declare a method as private in an abstract class. Even though we cannot create an instance of an abstract class, why is the private access modifier available within an abstract class, and what is the scope of it within an abstract class? In which scenario is the private access specifier used in an abstract class?

check out this code where Vehicle class is abstract and Car extends Vehicle.

package com.vehicle;

abstract class Vehicle {

 // What is the scope of the private access modifier within an abstract class, even though  method below cannot be accessed??
  private void onLights(){
   System.out.println("Switch on Lights");
  }

  public void startEngine(){
   System.out.println("Start Engine");
  }

}

Within is the same package creating a Car class

package com.vehicle;
/*
 * Car class extends the abstract class Vehicle
 */
public class Car extends Vehicle {

 public static void main(String args[]){
  Car c =  new Car();
  c.startEngine();
  // Only startEngine() can be accessed 
 }

}
  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-15T22:11:36+00:00Added an answer on May 15, 2026 at 10:11 pm

    Since an abstract class can contain functionality (as opposed to an interface) it can have private variables or methods.

    In your example you might do something like

     public void startEngine(){
       injectFuel();
       igniteSpark();
       // etc. my understanding of engines is limited at best
       System.out.println("Start Engine");
     }
    
     private void injectFuel() {}
     private void igniteSpark() {}
    

    That way you can spread some of the work to other methods (so you don’t have a 1000 line startEngine method), but you don’t want the children to be able to call injectFuel separately since it doesn’t make sense outside the context of startEngine (you want to make sure it’s only used there).

    Or even more you might have a private method that gets called in several other public methods, with different parameters. This way you avoid writing the same code twice or more in each of the public methods, and grouping the common code in a private method makes sure the children don’t access it (like they couldn’t just call part of the public method before). Something like this:

     public void startEngine() {
       dishargeBattery(50);
       System.out.println("Start Engine");
     }
    
     public void startRadio() {
       dischargeBattery(20);
     }
    
     private void dischargeBattery(int value) {
       battery.energy -= value; //battery should probably be a private field.
     }
    

    This way your methods can have access to the battery, but the children shouldn’t mess with it, and you don’t write the same line (battery.energy -= value) in both of them. Take note though, that these are very simple examples, but if dischargeBattery was a 500 line method, writing it in both the other methods would be a hassle.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Ask A Question

Stats

  • Questions 491k
  • Answers 491k
  • Best Answers 0
  • User 1
  • Popular
  • Answers
  • Editorial Team

    How to approach applying for a job at a company ...

    • 7 Answers
  • Editorial Team

    What is a programmer’s life like?

    • 5 Answers
  • Editorial Team

    How to handle personal stress caused by utterly incompetent and ...

    • 5 Answers
  • Editorial Team
    Editorial Team added an answer A couple of (very) simple generic helper methods might at… May 16, 2026 at 10:11 am
  • Editorial Team
    Editorial Team added an answer I ended up having to use a MessageInspector in conjunction… May 16, 2026 at 10:11 am
  • Editorial Team
    Editorial Team added an answer It looks like a properly normalized and flexible hierarchical structure… May 16, 2026 at 10:11 am

Trending Tags

analytics british company computer developers django employee employer english facebook french google interview javascript language life php programmer programs salary

Top Members

Related Questions

I know this is old, yet I am still not very good with understanding
I am having trouble settling down to a proper practice for UI JavaScript coding.
I have a text file which does not confirm to standards. So I know
Theoretically, the end user should never see internal errors. But in practice, theory and
I recently applied to several full time positions among some of the tech giants,
As a bit of a background I'm about to be a senior in Comp
I am sorry for possible misleading about the title, but I have no idea
Note: I'm using Zend Framework, but I think most of this applies to PHP
So I'm coming at WPF from a HTML perspective. I just want to put
We have a group of a few developers and some business analysts. We as

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.