Làm thế nào để xác định chính xác các phương thức trừu tượng riêng tư trong TypeScript?Làm thế nào để khai báo phương thức trừu tượng riêng trong TypeScript?
Đây là một mã đơn giản:
abstract class Fruit {
name: string;
constructor (name: string) {
this.name = name
}
abstract private hiFrase(): string;
}
class Apple extends Fruit {
isCitrus: boolean;
constructor(name: string, isCitrus: boolean) {
super(name);
this.isCitrus = isCitrus;
}
private hiFrase(): string {
return "Hi! I\'m an aplle and my name is " + this.name + " and I'm " + (isCitrus ? "" : " not ") + "citrus";
}
public sayHi() {
alert(this.hiFrase())
}
}
Mã này không hoạt động. Làm thế nào để sửa chữa nó?
có thể trùng lặp của http://stackoverflow.com/questions/13333489/declaring-abstract-method-in-typescript –
'private' == chỉ có thể trong lớp rất giống nhau. 'abstract' == không được thực hiện trong lớp này nhưng trong một số lớp kế thừa. Có một xung đột các định nghĩa ở đây. – deceze
Bạn muốn 'abstract abstract', không phải' abstract trừu tượng'. – series0ne