Вот то, что я использую (хотя у меня есть они в ярлыке вместо файла настроек):
eclipse.exe-showlocation-vm "C:\Java\jdk1.6.0_07\bin\javaw.exe"-vmargs-Xms256M-Xmx768M-XX: + UseParallelGC-xx:maxpermsize=128m
Используя шаблон конструктора мощности Дугласа Крокфорда (ссылка на видео), вы можете получить защищенные переменные следующим образом:
function baseclass(secret) {
secret = secret || {};
secret.privateProperty = "private";
return {
publicProperty: "public"
};
}
function subclass() {
var secret = {}, self = baseclass(secret);
alert(self.publicProperty);
alert(secret.privateProperty);
return self;
}
Примечание: с помощью шаблона конструктора мощности вы не используйте новый
. Вместо этого просто скажите var new_object = subclass ();
.
Пометьте свои частные переменные какой-нибудь разметкой, например подчеркиванием в начале _ Таким образом, вы узнаете, что это частная переменная (хотя технически это не так)
this._privateProperty = "private";
alert( this._privateProperty )
This isn't possible. And that isn't really a private property - it's simply a regular variable that's only available in the scope in which it was defined.
That can't be done, but you could delete the property from the class prototype so that it is not inherited:
SubClass.prototype.privateProperty = undefined;
That way it won't be inherited, but you need to do that for every "private" property in your base class.