I'm a newcomer to TypeScript and object-oriented programming. I am attempting to use a method from a child class in the parent class, but for some reason, the method is not being recognized.
Below is my Child class:
import {Ouvrage} from "./Class_Ouvrage";
import {Emprunt} from "./Class_Emprunt";
import {Adherant} from "./Class_Adherant";
export class Volumes extends Ouvrage {
private _NombreExemplaire: number;
private _NombreExemplaireEmpruntes: number;
private _auteur: string;
public get NombreExemplaire(): number {
return this._NombreExemplaire;
}
set NombreExemplaireEmpruntes(value: number) {
this._NombreExemplaireEmpruntes = value;
}
get NombreExemplaireEmpruntes(): number {
return this._NombreExemplaireEmpruntes;
}
get auteur(): string {
return this._auteur;
}
constructor(Pnombreexemplaire: number, Pnombreexemplairemprunte: number, Pauteur: string, PID: number, PTitre: string, Pdate: Date) {
super(PID, PTitre, Pdate);
this._auteur = Pauteur;
this._NombreExemplaire = Pnombreexemplaire;
this._NombreExemplaireEmpruntes = Pnombreexemplairemprunte;
}
descriptionVolume(): string {
return "l'auteur de ce volume s'apelle : " + this.auteur + " , il reste " + this.NombreExemplaire + "disponible(s)" + " Le nombre de volumes déja emprunté, s'éleve a " + this.NombreExemplaireEmpruntes;
}
public NbExemplaireDispo() : number{
return this.NombreExemplaire - this.NombreExemplaireEmpruntes;
}
}
Here is the parent class where I would like to call the method:
import {Volumes} from "./Class_Volume";
import {Adherant} from "./Class_Adherant";
export class Ouvrage{
private _id : number;
private _titre : string;
private _date : Date;
get id(): number {
return this._id;
}
get titre(): string {
return this._titre;
}
get date(): Date {
return this._date;
}
constructor(PID : number, PTitre : string, Pdate : Date) {
this._id = PID;
this._titre = PTitre;
this._date = Pdate;
}
descriptionOuvrage() : string{
return "Cet ouvrage s'apelle " + this.titre + " et il est sorti le " + this.date+" ";
}
this.NbExemplaireDispo();
}
How can I get NbExemplaireDispo()
to work?
As mentioned earlier, since I am new to oop, is it considered good practice to make this kind of call?
Thank you!