Տարբերությունը Java-ում փաթեթի և ինտերֆեյսի միջև

Բովանդակություն:

Տարբերությունը Java-ում փաթեթի և ինտերֆեյսի միջև
Տարբերությունը Java-ում փաթեթի և ինտերֆեյսի միջև

Video: Տարբերությունը Java-ում փաթեթի և ինտերֆեյսի միջև

Video: Տարբերությունը Java-ում փաթեթի և ինտերֆեյսի միջև
Video: Публичное собеседование: Junior Java Developer. Пример, как происходит защита проекта после курсов. 2024, Նոյեմբեր
Anonim

Փաթեթի և ինտերֆեյսի միջև հիմնական տարբերությունը Java-ում այն է, որ Package-ն օգնում է դասակարգել դասերը՝ դրանք հեշտությամբ մուտք գործելու և պահպանելու համար, մինչդեռ Ինտերֆեյսը օգնում է իրականացնել բազմաթիվ ժառանգություններ և հասնել աբստրակցիա:

Java-ն ամենահայտնի ծրագրավորման լեզուներից մեկն է: Java-ի հիմնական առավելությունն այն է, որ այն աջակցում է Object Oriented Programming-ին: Այս մեթոդաբանությունը թույլ է տալիս մոդելավորել իրական աշխարհի օբյեկտները ծրագրային ապահովման մեջ: Դասը օբյեկտ ստեղծելու ծրագիր է: Յուրաքանչյուր օբյեկտ պարունակում է տվյալներ կամ դաշտեր՝ նկարագրելու ատրիբուտները կամ հատկությունները և վարքագիծը նկարագրելու մեթոդները: Այս հոդվածը քննարկում է Java-ում Java-ում OOP-ի հետ կապված երկու հասկացություն, որոնք են Փաթեթը և Ինտերֆեյսը:

Ի՞նչ է փաթեթը Java-ում:

Java-ն ապահովում է մեծ թվով դասեր: Բոլոր դասերը մեկ թղթապանակում պահելը կարող է դժվար լինել, քանի որ դժվար է մուտք գործել: Սա կարող է ազդել ծրագրի կառավարելիության վրա: Java-ն օգտագործում է փաթեթներ դասեր կազմակերպելու համար: Այն նման է թղթապանակին։ Java API-ն դասերը բաժանում է տարբեր փաթեթների՝ ըստ ֆունկցիոնալության: Հետևաբար, յուրաքանչյուր փաթեթ պարունակում է համապատասխան դասերի հավաքածու:

Փաթեթների օրինակ Java-ում

Մի քանի օրինակ փաթեթներ հետևյալն են. Java.io փաթեթը պարունակում է մուտքային, ելքային օժանդակ դասեր: Այն ներառում է File, PrintStream, BufferInputStream և այլն: java.net փաթեթը պարունակում է ցանցին առնչվող դասեր: Որոշ օրինակներ են՝ URL, Socket, ServerSocket: java.awt փաթեթը պարունակում է բոլոր դասերը, որոնք անհրաժեշտ են Օգտագործողի գրաֆիկական միջերեսներ ստեղծելու համար: Դրանք մի քանի Java API փաթեթներ են:

Երբ ծրագրավորողը ցանկանում է ծրագրում օգտագործել որոշակի դաս, նա պետք է ներմուծի այդ փաթեթը։ Եթե ծրագրավորողը ցանկանում է օգտագործել BufferInputStream դասը java.io փաթեթում, նա պետք է գրի ներմուծման հայտարարությունը հետևյալ կերպ։

ներմուծել java.util. BufferInoutStream;

Ստորև բերված հայտարարությունը կներմուծի util փաթեթի բոլոր դասերը:

ներմուծել java.util.;

Հնարավոր է նաև ստեղծել օգտվողի կողմից սահմանված փաթեթներ։

փաթեթի աշխատակից;

հանրային կարգի աշխատակից {

}

Համաձայն վերոհիշյալ օրինակի՝ աշխատողը փաթեթի անվանումն է։ Աշխատակիցների դասը աշխատողների փաթեթի մի մասն է: Այս ֆայլը պահվում է որպես Employee.java աշխատողների փաթեթում:

Ավելին, հնարավոր է հանրային դաս ներմուծել մի փաթեթից մյուսը: Տե՛ս հետևյալ օրինակը։

Փաթեթի և ինտերֆեյսի միջև տարբերությունը Java-ում
Փաթեթի և ինտերֆեյսի միջև տարբերությունը Java-ում
Փաթեթի և ինտերֆեյսի միջև տարբերությունը Java-ում
Փաթեթի և ինտերֆեյսի միջև տարբերությունը Java-ում

Նկար 01. Դաս A

Փաթեթի և ինտերֆեյսի միջև տարբերությունը Java_Figure 2-ում
Փաթեթի և ինտերֆեյսի միջև տարբերությունը Java_Figure 2-ում
Փաթեթի և ինտերֆեյսի միջև տարբերությունը Java_Figure 2-ում
Փաթեթի և ինտերֆեյսի միջև տարբերությունը Java_Figure 2-ում

Նկար 02. Դաս B

Ա դասը 1-ին փաթեթում է, և այն պարունակում է ցուցադրում կոչվող հանրային մեթոդը: B դասը 2-րդ փաթեթում է, և այն պարունակում է հիմնական մեթոդը: Չնայած դրանք առանձին փաթեթներում են; B դասը կարող է ստեղծել A դասի օբյեկտ՝ ներմուծելով փաթեթ1: 1-ին փաթեթը ներմուծելուց հետո B դասին հասանելի են A դասի տվյալները և մեթոդները:

Ընդհանուր առմամբ, Java-ի փաթեթն օգնում է կազմակերպել նախագծի ֆայլերը: Սա շատ օգտակար է մեծ համակարգ մշակելիս, քանի որ թույլ է տալիս մեթոդական կերպով պահել բոլոր ֆայլերը: Բացի այդ, Java API փաթեթները թույլ են տալիս ծրագրավորողներին օգտագործել արդեն գոյություն ունեցող դասերը:

Ի՞նչ է ինտերֆեյսը Java-ում:

Երբեմն ծրագրավորողը կարող է չգիտի մեթոդի սահմանումը: Այս իրավիճակներում ծրագրավորողը կարող է միայն հայտարարել մեթոդը: Վերացական մեթոդը այն մեթոդն է, որը չունի սահմանում: Այն ունի միայն հայտարարագիրը. Երբ կա առնվազն մեկ աբստրակտ մեթոդ, այդ դասը դառնում է վերացական դաս։ Ավելին, աբստրակտ դասը կարող է պարունակել ինչպես աբստրակտ, այնպես էլ ոչ վերացական մեթոդներ։ Ծրագրավորողը չի կարող օբյեկտներ ստեղծել վերացական դասերից:

Երբ դասը ընդլայնում է աբստրակտ դասը, նոր դասը պետք է սահմանի աբստրակտ դասի ողջ աբստրակտ մեթոդը: Այլ կերպ ասած, ենթադրենք, որ վերացական A դասը ունի վերացական մեթոդ, որը կոչվում է ցուցադրում: B դասը ընդլայնում է A դասը: Այնուհետև B դասը պետք է սահմանի մեթոդի ցուցադրումը:

Ինտերֆեյսի օրինակ Java-ում

Ենթադրենք, որ A-ն և B-ն էլ վերացական դասեր են: Եթե C դասը ընդլայնում է A և B, ապա C դասը պետք է սահմանի երկու դասերի վերացական մեթոդները:Սա բազմակի ժառանգություն է: Java-ն չի աջակցում բազմակի ժառանգությանը: Այն իրականացնելու համար ծրագրավորողը պետք է օգտագործի միջերեսներ: Եթե A-ն և B-ն միջերեսներ են, ապա C դասը կարող է դրանք իրականացնել: Տե՛ս հետևյալ օրինակը։

Փաթեթի և ինտերֆեյսի միջև տարբերությունը Java_Figure 3-ում
Փաթեթի և ինտերֆեյսի միջև տարբերությունը Java_Figure 3-ում
Փաթեթի և ինտերֆեյսի միջև տարբերությունը Java_Figure 3-ում
Փաթեթի և ինտերֆեյսի միջև տարբերությունը Java_Figure 3-ում

Նկար 03. միջերես A

Փաթեթի և ինտերֆեյսի միջև տարբերությունը Java_Figure 4-ում
Փաթեթի և ինտերֆեյսի միջև տարբերությունը Java_Figure 4-ում
Փաթեթի և ինտերֆեյսի միջև տարբերությունը Java_Figure 4-ում
Փաթեթի և ինտերֆեյսի միջև տարբերությունը Java_Figure 4-ում

Նկար 04. միջերես B

Ինտերֆեյսը A-ն ունի display1 վերացական մեթոդ, իսկ ինտերֆեյսը B-ն ունի display2 աբստրակտ մեթոդ:

Փաթեթի և ինտերֆեյսի միջև տարբերությունը Java_Figure 5-ում
Փաթեթի և ինտերֆեյսի միջև տարբերությունը Java_Figure 5-ում
Փաթեթի և ինտերֆեյսի միջև տարբերությունը Java_Figure 5-ում
Փաթեթի և ինտերֆեյսի միջև տարբերությունը Java_Figure 5-ում

Նկար 05. Դաս C

C դասը իրականացնում է և՛ A, և՛ B միջերեսներ: Հետևաբար, այն պետք է սահմանի երկու մեթոդները:

Հիմնական տարբերությունը Java-ում փաթեթի և ինտերֆեյսի միջև
Հիմնական տարբերությունը Java-ում փաթեթի և ինտերֆեյսի միջև
Հիմնական տարբերությունը Java-ում փաթեթի և ինտերֆեյսի միջև
Հիմնական տարբերությունը Java-ում փաթեթի և ինտերֆեյսի միջև

Նկար 06. Հիմնական մեթոդ

Այժմ հիմնական մեթոդում հնարավոր է ստեղծել C-ի օբյեկտ և կանչել երկու մեթոդները: Նմանապես, ինտերֆեյսները օգնում են Java-ում բազմակի ժառանգություն իրականացնել:

Բացի բազմակի ժառանգությունից, միջերեսներն օգնում են հասնել վերացականության: Դա OOP-ի հիմնական հասկացություններից մեկն է: Աբստրակցիան թույլ է տալիս թաքցնել իրականացման մանրամասները և օգտագործողին ցույց տալ միայն ֆունկցիոնալությունը։ Ավելին, այն թույլ է տալիս կենտրոնանալ այն բանի վրա, թե ինչ է անում օբյեկտը, այլ ոչ թե ինչպես է դա արվում: Քանի որ ինտերֆեյսը բաղկացած է վերացական մեթոդներից, այն օգնում է արխիվացնել աբստրակցիան:

Ո՞րն է տարբերությունը Java-ում փաթեթի և ինտերֆեյսի միջև:

Փաթեթը հարակից դասերի խումբ է, որն ապահովում է մուտքի պաշտպանություն և անվանատարածքի կառավարում:Ինտերֆեյսը դասի նման հղման տեսակ է, որը վերացական մեթոդների հավաքածու է: Փաթեթն օգնում է դասակարգել դասերը՝ դրանք հեշտությամբ մուտք գործելու և պահպանելու համար: Մյուս կողմից, Ինտերֆեյսը օգնում է իրականացնել բազմաթիվ ժառանգություններ և հասնել աբստրակցիա: Սա Java-ում փաթեթի և ինտերֆեյսի հիմնական տարբերությունն է: Ավելին, փաթեթ գրելու ձևը փոքրատառերով է, ինչպիսիք են java.util, java.awt: Եթե ինտերֆեյսի անունը Տարածք է, ապա այն գրված է՝ միջերեսի տարածք։

Փաթեթի և ինտերֆեյսի միջև տարբերությունը Java-ում աղյուսակային ձևով
Փաթեթի և ինտերֆեյսի միջև տարբերությունը Java-ում աղյուսակային ձևով
Փաթեթի և ինտերֆեյսի միջև տարբերությունը Java-ում աղյուսակային ձևով
Փաթեթի և ինտերֆեյսի միջև տարբերությունը Java-ում աղյուսակային ձևով

Ամփոփում – Փաթեթ ընդդեմ ինտերֆեյսի Java-ում

Փաթեթի և ինտերֆեյսի միջև տարբերությունը Java-ում այն է, որ Package-ն օգնում է դասակարգել դասերը՝ դրանք հեշտությամբ մուտք գործելու և պահպանելու համար, մինչդեռ Ինտերֆեյսը օգնում է իրականացնել բազմաթիվ ժառանգություններ և հասնել աբստրակցիա:

Խորհուրդ ենք տալիս: