Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 05.04.2012, 13:03
Новичок на форуме
Отправить личное сообщение для finner Посмотреть профиль Найти все сообщения от finner
 
Регистрация: 05.04.2012
Сообщений: 1

JavaScript. Создание собственных объектов
Нужно сделать такое задание:

Создать класс Студент, имеющий имя(указатель на строку), курс и идентификационный номер. Определить конструктор, деструктор и функцию печати. Создать производный класс public - производный класс - студент дипломник , содержащий тему диплома. Определить конструкторы по умолчанию с разным числом параметров, деструктор, функцию вывода. Определить функцию изменения названия диплома и идентификационного номера.

Строк выполнения: Нужно выполнить сегодня.
Оплата: Стоимость работы сам определить не могу. Все предложения по цене и способам оплаты рассматриваются и обсуждаются до начала работы.

Помогите пожалуйста!
Ответить с цитированием
  #2 (permalink)  
Старый 05.04.2012, 17:37
Аватар для GuardCat
Просто любитель
Отправить личное сообщение для GuardCat Посмотреть профиль Найти все сообщения от GuardCat
 
Регистрация: 13.09.2011
Сообщений: 300

Вот на скорую руку. Плюс не знаю как в js делать деструктор. Если вдруг подойдёт и захотите заплатить (удивлюсь, поскольку не уверен что это то что нужно, плюс нет деструктора), пишите в личку.
function Student(name, level, id) {
	//Определяем значения по умолчанию.
	//Оптимальнее было бы заложить значения по умолчанию в прототип, но так сложнее будет печатать поля в классе-потомке.
	this.name = name || "no named";
	this.level = level || 1;
	this.id = id || 0;
}

Student.prototype = {

	//Определяем методы, общие для всех экземпляров класса
	show: function() { // Печать полей класса
		var list = [ ], x;
		for(x in this) {
			if(this.hasOwnProperty(x)){
				list.push(x + ": " + this[x]);
			}
		}
		alert(list.join("\n"));
	},
	
	changeId: function (newId){//Функция смены id
		if(newId) this.id = newId;
		return newId
	},

	constructor: Student
};

function SuperStudent(name, level, id, diplom) {
	this.name = name || "no named";
	this.level = level || 1;
	this.id = id || 0;
	this.diplom = diplom || "";
}

SuperStudent.prototype = new Student(); // Типа унаследовали

SuperStudent.prototype.changeDiplom = function(theme) {
	if(theme) this.diplom = theme;
	return this.diplom;
} // Определили функцию смены темы диплома

SuperStudent.prototype.constructor = SuperStudent;

s = new Student("Иванов Сергей Петрович", 2, 123);// Создали студента
s.show();
s.changeId(124);// Изменили id
s.show();

//Создадим дипломника
ss = new SuperStudent("Графинов Армен Викторович", 6, 125, "Методика детектирования взаимосвязи между распилом бюджетных средств и глобальным потеплением климата");
ss.show();
//Cменим ему id и тему диплома
ss.changeDiplom("Почём нынче тепло");
ss.changeId("0");
ss.show();
Ответить с цитированием
  #3 (permalink)  
Старый 05.04.2012, 17:50
Аватар для trikadin
Модератор
Отправить личное сообщение для trikadin Посмотреть профиль Найти все сообщения от trikadin
 
Регистрация: 27.04.2010
Сообщений: 3,417

Сообщение от GuardCat
Плюс не знаю как в js делать деструктор
Никак.

Товарищ, вы форумом не ошиблись? Это по JavaScript, а вам, по-моему, нужно на форум по C++.
__________________
Читайте:
Ты любопытный) Всё-таки, ничему в этом мире не помешает хорошая доля юмора)
Как спросить, чтобы вам ответили
Часто Задаваемые Вопросы (FAQ)
Ответить с цитированием
Ответ


Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Профилирование JavaScript объектов в памяти prike Общие вопросы Javascript 4 05.08.2012 15:09
Последние книги по JavaScript! monolithed Учебные материалы 7 26.10.2010 19:40
Выдвет ошибку JavaScript Ромио Opera, Safari и др. 4 21.10.2010 20:34
создание текстового поля с помощью javascript mrDeko Общие вопросы Javascript 2 02.09.2010 21:07
Создание Новой Библиотеки JavaScript Rudolf Eremyan Элементы интерфейса 9 21.09.2009 22:45