Ich weiß, dass es keine gute Programmierpraxis ist, eine Methode als private
in einer abstract
Klasse zu deklarieren. Auch wenn wir keine Instanz einer abstract
-Klasse erstellen können, warum ist der Zugriffsmodifizierer private
innerhalb einer abstract
-Klasse verfügbar, und was ist der Umfang davon innerhalb einer abstract
-Klasse? In welchem Szenario wird der Zugriffsspezifizierer private
in einer abstract
Klasse verwendet?Warum gibt es einen privaten Zugriffsmodifikator in einer abstrakten Klasse in Java, obwohl wir keine Instanz einer abstrakten Klasse erstellen können?
überprüfen Sie diesen Code wo Vehicle
Klasse ist abstrakt und Car
erweitert Fahrzeug.
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");
}
}
im gleichen Paket ist eine Car-Klasse
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
}
}
Sie haben mich überzeugt! – JerryGoyal