Abstract class için asağıdaki verdiğim örbeği inceleyebilirsiniz. örnekte bir ortak class oluşturup sonra ev ve araba için uygulama yaptım. en son olarak ta cıktsını sizlere paylastım.
abstract class Basecart {
constructor() {
}
kaydet():void
{
console.log("Veri Kaydedildi")
}
abstract Hesapla():void;
}
class Araba extends Basecart{
constructor ()
{
super();
}
Hesapla():void{
console.log("Araba Hesapladım")
}
}
class Ev extends Basecart{
constructor()
{
super()
}
Hesapla():void{
console.log("Ev Hesapladım")
}
}
let arabam=new Araba()
arabam.kaydet();
arabam.Hesapla();
//ortak tanımla
let base:Basecart;
base = new Araba;
base.Hesapla();
//cıktısı
//D:\typescript>node abstractClasses.js
//Veri Kaydedildi
//Araba Hesapladım
//Araba Hesapladım
Saf JS cıktısı
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
var Basecart = /** @class */ (function () {
function Basecart() {
}
Basecart.prototype.kaydet = function () {
console.log("Veri Kaydedildi");
};
return Basecart;
}());
var Araba = /** @class */ (function (_super) {
__extends(Araba, _super);
function Araba() {
return _super.call(this) || this;
}
Araba.prototype.Hesapla = function () {
console.log("Araba Hesapladım");
};
return Araba;
}(Basecart));
var Ev = /** @class */ (function (_super) {
__extends(Ev, _super);
function Ev() {
return _super.call(this) || this;
}
Ev.prototype.Hesapla = function () {
console.log("Ev Hesapladım");
};
return Ev;
}(Basecart));
var arabam = new Araba();
arabam.kaydet();
arabam.Hesapla();
//ortak tanımla
var base;
base = new Araba;
base.Hesapla();