Николай Ненков
преподава по Математика
в град Варна
Големина на текста:
Въведение в обектно-ориентираното
програмиране
Основни предимства:
висока степен на обвързаност на програмните обекти с обектите от реалния
свят, което позволява на програмиста да се абстрахира от управлението на
множеството данни и структури, които ги описват;
висока надеждност на програмния код, благодарение на лесната изолация на
обектите;
бърза реализация на приложенията, благодарение на възможността за използ-
ване и/или модифициране на вече съществуващи обекти;
възможност за работа на големи колективи от програмисти, благодарение на
много добрата структурираност и разбираемост на изходния обектно-ориентиран
код;
лесно обновяване на възможностите на изходния код.
Основни недостатъци:
изискват се повече ресурси (производителност на процесора, количество
оперативна памет);
намалено бързодействие на приложението: използването на обектно-ориенти-
рано програмиране при системи с ограничени изчислителни ресурси (вградени
системи, едночипови системи) не е препоръчително - по-добрият подход при
такива системи е да се използва модулно програмиране;
по-трудно възприемане от страна на начинаещите програмисти на възможно-
стите, които обектно-ориентираното програмиране предоставя.
Java класове
За да може да се създаде даден обект е необходимо операционната система (JVM
при Java) да знае колко памет е необходима за неговите компоненти (променливи и
методи). Описанието на тези компоненти се реализира чрез класове.
Примерна структура на Java клас:
Модификатор
на достъпа
class
ИмеНаКласа
extends
ИмеНаКлас
implements
ИмеНаИнтерфейс_1,...,
ИмеНаИнтерфейс_N
public
class MyFirstClass
{
}
Класът може да се разглежда като шаблон чрез който могат да се генерират
(чрез ключовата дума
new
) толкова обекти, колкото са необходими. Самият
клас не генерира програмен код - той съдържа само описанието на
компонентите на бъдещите обекти.
// Константи и променливи, достъпни за всички методи от класа:
Модификатор на
достъпа
Тип на
променливата
Име на
променливата
= стойност
final static int NUM_OF_ITEMS = 10;
private int mySum;
// Конструктор на класа:
public
MyFirstClass()
{
// тяло на конструктора:
mySum = 0;
}
// Методи:
Модификатор на
достъпа
Тип на връщаната
стойност
Име на
метода
(Тип на
атрибут 1
Име на
атрибут 1
, ... )
private int sum ( int [] pars )
{
// тяло на метода:
int sum = 0;
for (int i=0; i<args.length; i++) {
sum += args[i];
}
return sum;
}
Тяло на класа
Java oбекти
Програмните обекти симулират състоянието и действието на реалните обекти.
Състоянието на обекта се описва чрез член-променливи (полета в Java), а
действията, които обектът може да реализира, чрез член-функции (методи в Java).
Програмният обект реално заема оперативна памет. Тя е необходима за промен-
ливите и методите, които го описват. За разлика от C++, при който обектите могат
да се създават в стека и в динамичната памет (хийп), при Java обектите се създават
само в хийпа чрез запазената дума
new
. Причината за това ограничение е да се
гарантира сигурността и надеждността на Java приложенията. Тъй като в даден
момент в паметта могат да съществуват множество копия на даден обект, те трябва
да се разграничават по някакъв начин от JVM. За целта компилаторът генерира
уникално число, наречено инстанция на обекта.
Конструкторът в Java е специален метод с име, съвпадащо с името на класа в
който е дефиниран. Той се вика от JVM веднага след като от класа се създаде обект.
Затова конструкторът се използва най-често с цел инициализация на състоянието на
обекта и отпускане на необходимите за неговото функциониране ресурси. От един
клас могат да се създадат колкото желаем на брой обекти чрез ключовата дума
new
.
Структурата на класовете в Java и C++ се различава минимално. Основната
разлика е в липсата на деструктори в Java. Докато конструкторът има за задача да
инициализира бъдещия обект, който се създава от класа, то деструкторът трябва да
освободи всички заети от обекта ресурси, преди да се прекрати неговото
използване. Тази задача в Java (аналогично е и при C#) се изпълнява от специален
модул от JVM, наречен Garbage Collector (GC). Този модул анализира вреално
времекои обекти трябва да бъдат унищожени.
Обектът е специфична комбинация от променливи, описващи състоянието
му, и методи чрез които се реализира неговата функционалност.
// деклариране на обект:
Име_на_класа име_на_обекта;
MyFirstClass myFirstObject;
// създаване на обект:
име_на_обекта = new Име_на_конструктора (списък от атрибути);
myFirstObject = new MyFirstClass();
// едновременно деклариране и създаване на обект:
MyFirstClass myFirstObject = new MyFirstClass();

Това е само предварителен преглед

За да разгледате всички страници от този документ натиснете тук.

Обектно ориентирано програмиране

Въведение в обектно-ориентираното програмиране. Предимства и недостатъци. Java класове...
Изпратен от:
Георги Руменов Талов
на 2012-12-11
Добавен в:
Лекции
по Програмиране
Статистика:
28 сваляния
виж още
 
Подобни материали
 

Задача по C++

24 окт 2006
·
616
·
1
·
208
·
220

Урок по програмиране на Английски език.
 

Програмиране - C и C++

12 дек 2007
·
1,142
·
155
·
36,823
·
846
·
1
·

С и С++ са най - важните световни програмни езици . Всъщност, за да бъдете професионален програмист днес означава опитност в тези два езика.Те са основата, върху която е изградено модерното програмиране. С беше изобретен от Денис Ричи през 1970г...
 

Обектно – ориентирано програмиране

11 юни 2007
·
349
·
2
·
401
·
85

Обектно – ориентиран подход за програмиране. Класове. Обекти. Наследяване
 

Запознаване с JavaScript

15 юли 2007
·
288
·
2
·
325

Javascript е най-широко разпространеният език за програмиране в интернет, след HTML .
 

Как да си направим сайт на РНР

18 мар 2006
·
1,807
·
6
·
491
·
107
·
1
·
1

Избор на хостинг.. Настройки.. Попълване..снабдяване с FTP Програма..Тестване...
1 2 3 4 5 » 11
 
Онлайн тестове по Програмиране
Програмиране в интернет среда (X)HTML и CSS
изпитен тест по Програмиране за Студенти от 3 курс
Тестът е използван в МГУ “Св. Иван Рилски” и включва 30 въпроса, изискващи един верен отговор. Подходящ за проверка на знанията в областта.
(Труден)
30
12
1
5 мин
01.10.2014
Централен процесор и памет
междинен тест по Програмиране за Неучащи от 1 клас
Тестът включва въпроси относно програмирането и използването на компютрите. Всички въпроси са затворени и изискват само един верен отговор.
(Труден)
20
7
1
2 мин
12.11.2014
» виж всички онлайн тестове по програмиране

Обектно ориентирано програмиране

Материал № 927467, от 11 дек 2012
Свален: 28 пъти
Прегледан: 47 пъти
Предмет: Програмиране, Информатика, ИТ
Тип: Лекция
Брой страници: 5
Брой думи: 300
Брой символи: 1,892

Потърси помощ за своята домашна:

Имаш домашна за "Обектно ориентирано програмиране"?
Намери бързо решение, с помощтта на потребители на Pomagalo.com:

Намери частен учител

Виторио Белоречки
преподава по Програмиране
в град София
с опит от  4 години
338 37

Николай Ненков
преподава по Математика
в град Варна
с опит от  2 години
493 89

виж още преподаватели...
Последно видяха материала