ඔබ්ජෙක්ට් අභිමුඛ වැඩසටහන් කිරීමේ දී TypeScript හි වියුක්ත ක්රම
සමහර විට, උපවර්ගවලට පොදු ක්රමයක් තිබිය යුතුය, කෙසේ වෙතත්, එම ක්රමය ක්රියාත්මක කිරීම නිශ්චිත උපවර්ගය මත රඳා පවතී. මෙම
අවස්ථාවේ දී මෙම ක්රමය මාපියයාගේ වියුක්ත පන්තියේ අධිෂ්ඨාන කළ හැකිය, එහි ක්රියාත්මක කිරීම ලිවීමෙන් තොරව.
එවිට උපවර්ග මෙම ක්රම ක්රියාත්මක කිරීමට බැඳී සිටී. එවැනි
ක්රම හඳුන්වන්නේ වියුක්ත ලෙස වන අතර
මූලපදය භාවිතයෙන් ද abstract අධිෂ්ඨාන කරනු ලැබේ.
උදාහරණයක් ලෙස, අපගේ වියුක්ත
පන්තිය User ගනිමු. මෙම
පන්තියේ උරුමක් සතුව අනිවාර්යයෙන්ම show ක්රමය තිබිය යුතුය,
එමඟින් වස්තුවේ දත්ත ප්රදර්ශනය කරයි.
මෙම ක්රමය ක්රියාත්මක කිරීම, කෙසේ වෙතත්,
උපවර්ගය මත රඳා පවතී. අපි User පන්තියේ
මෙම ක්රමය වියුක්ත ලෙස අධිෂ්ඨාන කරමු:
abstract class User {
public name: string;
constructor(name: string) {
this.name = name;
}
public abstract show(): string;
}
මෙම ක්රමය Student උපවර්ග පන්තියේ ක්රියාත්මක කරමු:
class Student extends User {
public course: number;
constructor(name: string, course: number) {
super(name);
this.course = course;
}
show() {
return this.name + ' ' + this.course;
}
}
මෙම ක්රමය Employee උපවර්ග පන්තියේ ක්රියාත්මක කරමු:
class Employee extends User {
public salary: number;
constructor(name: string, salary: number) {
super(name);
this.salary = salary;
}
show() {
return this.name + ' ' + this.salary;
}
}
වියුක්ත පන්තියේ Figure වර්ගඵලය
සහ පරිමිතිය ලබා ගැනීම සඳහා
වියුක්ත ක්රම සකස් කරන්න.
උපවර්ග පන්තිවල Square සහ
Rectangle මෙම ක්රමවල ක්රියාත්මක කිරීම
ලියන්න.