Шта је Објект у Јави и како га користити?



Објекат у Јави је ентитет из стварног света који има своје својство и понашање. Сазнајте све о објектима у Јави и како их креирати на више начина.

Јава је . Другим речима, готово све у Јави се третира као објекат. Стога, док програмирате на Јави, треба знати све могуће начине стварања објеката на Јави. Али пре него што зароните дубље у предмете, морате знати концепт Јава Цлассес и како су предмети повезани са њима.

У овом посту ћемо обрадити 5 различитих начина стварања објеката у Јави и разумети све основне концепте потребне за разумевање метода.





  1. Направите објекте помоћу кључне речи „нова“
  2. Стварање објеката методом цлоне ()
  3. Креирајте објекте помоћу методе класе невИнстанце ()
  4. Стварање објеката помоћу десериализације
  5. Креирајте објекте помоћу методе невИнстанце () конструкторске класе

Хајде да почнемо.



Направите објекте помоћу кључне речи „нова“

Током програмирања на Јави можда сте сигурно наишли на кључну реч „нова“. То је кључна реч која се користи за креирање објекта који се динамички додељује меморији, тј. Меморија тим објектима додељује се током извршавања. А ово динамичко додељивање је потребно већину времена док се праве објекти. Стога се овај метод користи чешће од других.

Синтакса : ЦлассНаме ОбјецтНаме = нев цлассЦонструцтор ()



јавна класа ОбјецтЦреатион {Стринг ФирстСтринг = 'Хелло Ворлд' публиц статиц воид маин (Стринг [] аргс) {ОбјецтЦреатион обј = нев ОбјецтЦреатион () Систем.оут.принтлн (обј.ФирстСтринг)}}

Оутпут- Здраво Свете

оператер резолуције опсега у ц ++

Овај метод креирања објеката у Јави може се користити са било којим конструктором потребне класе ако класа има више од 1 градитељ .

Креирајте објекте методом цлоне ()

Шта ако би објекат који желимо да створимо био копија већ постојећег ? У том случају можемо користити методу цлоне (). цлоне () је део класе Објецт, али се не може користити директно јер је заштићена метода.

цлоне () метода се може користити само након примене Цлонеабле интерфејса и руковањаЦлонеНотСуппортедЕкцептион.

класа Мессаге имплементира Цлонеабле {Стринг ФирстСтринг Мессаге () {тхис.ФирстСтринг = 'Хелло Ворлд'} публиц Објецт цлоне () баца ЦлонеНотСуппортедЕкцептион {ретурн супер.цлоне ()}} публиц цласс ОбјецтЦреатион {публиц статиц воид маин (Стринг [] аргс) баца ЦлонеНотСуппортедЕкцептион {Мессаге ФирстОбј = нев Мессаге () Систем.оут.принтлн (ФирстОбј.ФирстСтринг) Мессаге СецондОбј = (Мессаге) ФирстОбј.цлоне () Систем.оут.принтлн (СецондОбј.ФирстСтринг) СецондОбј.ФирстСтринг = 'Добродошли у свет програмирања 'Систем.оут.принтлн (СецондОбј.ФирстСтринг) Систем.оут.принтлн (ФирстОбј.ФирстСтринг)}}

Оутпут-

Здраво Свете

како створити датотеку дневника у јави

Здраво Свете

Добродошли у свет програмирања

Здраво Свете

У горе наведеном програму створили смо копију нашег већ постојећег објекта. Да би били сигурни да оба не упућују на исто меморијско место, било је битно променити вредност „ФирстСтринг“ за други објекат, а затим исписати његову вредност за оба објекта.

Креирајте објекте помоћу методе невИнстанце () класе Цласс

Ова метода се не користи често за стварање објеката. Овај метод креирања објекта користи се ако знамо име класе и подразумевани конструктор је јавне природе. Да бисмо користили ову методу за креирање објеката, треба да обрадимо 3 изузетка

ЦлассНотФоундЕкцептион- Овај изузетак се дешава ако ЈВМ не може да пронађе класу која се предаје као аргумент.

ИнстантиатионЕкцептион- Овај изузетак се јавља ако дата класа не садржи подразумевани конструктор.

ИллегалАццессЕкцептион- Овај изузетак се јавља ако немамо приступ наведеном класа .

Једном када се побринемо за ове изузетке, добро је кренути.

шта је променљива инстанце у јави
цласс ОбјецтЦреатион {Стринг ФирстСтринг = 'Хелло Ворлд' публиц статиц воид маин (Стринг [] аргс) {три {Цласс Мессаге = Цласс.форНаме ('ОбјецтЦреатион') ОбјецтЦреатион обј = (ОбјецтЦреатион) Мессаге.невИнстанце () Систем.оут.принтлн (обј.ФирстСтринг)} цатцх (ЦлассНотФоундЕкцептион е) {е.принтСтацкТраце ()} цатцх (ИнстантиатионЕкцептион е) {е.принтСтацкТраце ()} цатцх (ИллегалАццессЕкцептион е) {е.принтСтацкТраце ()}}}

Оутпут- Здраво Свете

Стварање објеката помоћу десериализације

У Јави се серијализација користи за претварање тренутног стања објекта у бајтни ток. десериализација је управо супротна јер поново стварамо објекат помоћу бајт тока. За процес сериализације морамо да имплементирамо интерфејс који се може серирати. Изузетак Руковање се врши за стварање објеката помоћу ове методе.

ОбјецтИнпутСтреам објецтИнпутСтреам = нови ОбјецтИнпутСтреам (инпутСтреам) Име класе објецт = (име класе) објецтИнпутСтреам.реадОбјецт ()

Креирајте објекте помоћу методе невИнстанце () класе Цонструцтор

Видели смо методу невИнстанце класе Цласс коју смо користили за креирање објекта. Слично томе, конструктор класе се такође састоји од методе невИнстанце () која се може користити за креирање објеката. Други могу подразумевани конструктори уз помоћ ове методе коју такође можемо позвати параметризовани конструктори .

импорт јава.ланг.рефлецт. * публиц цласс ОбјецтЦреатион {привате Стринг ФирстСтринг = 'Хелло Ворлд' ОбјецтЦреатион () {} публиц воид цхангеМессаге (Стринг мессаге) {тхис.ФирстСтринг = мессаге} публиц статиц воид маин (Стринг [] аргс) { покушајте {Цонструцтор цонструцтор = ОбјецтЦреатион.цласс.гетДецларедЦонструцтор () ОбјецтЦреатион објецтЦреатион = цонструцтор.невИнстанце () објецтЦреатион.цхангеМессаге ('Добродошли у свет програмирања') Систем.оут.принтлн (објецтЦреатион.ФирстСтринг)} цатцх (Екцептион е) { е.принтСтацкТраце ()}}}

Оутпут-

Добродошли у свет програмирања

Ово је 5 различитих начина стварања објеката у неки се користе чешће од других. Свака метода има своје предности и недостатке. На крају, избор је на вама.

Јава је занимљив језик, али постаје запетљан ако основе нису јасне. Да бисте започели, ваше учење и савладавање свих вештина повезаних са Јава технологијом упишите се на и ослободите Јава програмера у себи.

Имате питање за нас? молимо вас да то поменете у одељку за коментаре овог чланка о „објектима на Јави“ и јавићемо вам се што је пре могуће.