Abstraktās nodarbības palīdzēt lietotājiem sasniegt abstrakciju, kas ir vissvarīgākā objektorientētā programmēšanas prakse, kas jāievēro programmatūras projektēšanas procesā. Šajā rakstā mēs apspriedīsim abstrakto klašu terminoloģiju, izmantojot šo kontaktligzdu.
- Kas ir Java abstraktās klases?
- Kāpēc mums ir nepieciešamas abstraktas klases Java?
- Noteikumi abstrakto klašu izmantošanai Java
- Veidi, kā panākt abstrakciju Java
- Abstrakto nodarbību sintakse
- Praktiski abstraktu nodarbību piemēri
- Atšķirība starp saskarni un abstrakto klasi
Kas ir Java abstraktās klases?
Abstraktās nodarbības darbojas kā robeža starp ieviešanas metodi un tās funkcionalitāti. To izmanto, lai apmainītos ar funkcionalitāti starp Betons klases locekļi un Abstrakts Klase.
Abstraktās klases tiek uzskatītas par klasēm, kas slēpj Metodes ieviešana lietotāja informāciju un parāda tikai Metodes funkcionalitāte. Tie tiek deklarēti, izmantojot atslēgvārdu abstrakts . Šīs metodes var ietvert Abstrakts un Ne-abstrakts metodes tajās.
c ++ stl intervijas jautājumi
Kāpēc mums ir nepieciešamas abstraktas klases Java?
Mums ir nepieciešamas Java abstraktās klases šādu iemeslu dēļ:
- Abstract klases atbalsts Dinamiskās metodes izšķirtspēja izpildes laikā
- Tie palīdz lietotājiem sasniegt Loose Coupling
- Abstraktās klases atdala Metodes definīcija no Mantotā Apakšklases
- Tie nodrošina Noklusējuma funkcionalitāte definēto metodi visām apakšklasēm
- Abstraktās nodarbības nodrošina a Veidne nākamajām konkrētajām klasēm
- Abstraktā klase atļauj Kods Atkārtota izmantošana
Noteikumi abstrakto klašu izmantošanai Java
Lai Java abstraktā klasē ieviestu, mums jāievēro šādi aprakstītie noteikumi:
- Abstraktā klase jādeklarē, izmantojot abstrakts atslēgvārds.
- Abstraktās klases var ietvert abstrakts un nav abstrakts metodes.
- Abstrakta klase nevar būt instancēts.
- Tie var ietvert konstruktori un statisks metodes.
- Abstraktā klasē ietilpst galīgais metodes.
Veidi, kā panākt abstrakciju Java
Abstrakcijas procesu Java var sasniegt ar šādām divām metodēm, kā minēts turpmāk:
- Abstraktās klases ieviešana
- Saskarnes ieviešana
Abstrakto nodarbību sintakse
Abstrakto klašu un abstrakto metožu definēšanas sintakse ir šāda:
abstraktā klase Edureka {}
abstraktās klases metode ()
Praktiski abstraktu nodarbību piemēri
// Abstrakta klase
pakete Abstract public abstract class Person {private String name private String gender public Person (String nm, String gen) {this.name = nm this.gender = gen} public abstract void Studying () @Override public String toString () {return ' Vārds = '+ this.name +' :: Dzimums = '+ this.gender}}
// Studentu klase
pakete Anotācija publiskā klase Students pagarina personu {private int StudentID public Student (String nm, String gen, int id) {super (nm, gen) this.StudentID = id} @Override public void Studying () {if (StudentID == 0 ) {System.out.println ('Not Studying')} else {System.out.println ('Inženierzinātņu bakalaura grāda iegūšana')}} public static void main (String args []) {Persona students = jauns students ('Priya', 'Sieviete', 0) Persona students1 = jauns students ('Karan', 'Vīrietis', 201021) Persona students2 = jauns students ('Kumari', 'Sieviete', 101021) Persona students3 = jauns students (' John ',' Male ', 201661) students. Studying () students1.Studying () students2.Studying () students3.Studying () System.out.println (student.toString ()) System.out.println (student1.toString ()) System.out.println (students2.toString ()) System.out.println (students3.toString ())}}
Izeja:
Nemācās
Inženierzinātņu bakalaura grāda iegūšana
Inženierzinātņu bakalaura grāda iegūšana
Inženierzinātņu bakalaura grāda iegūšana
Vārds = Priya :: Dzimums = Sieviete
Vārds = Karana :: Dzimums = Vīrietis
Vārds = Kumari :: Dzimums = Sieviete
Vārds = Jānis :: Dzimums = Vīrietis
parsējot xml failu Java
Atšķirība starp saskarni un abstrakto klasi
Saskarne | Abstrakta klase |
Var būt tikai abstraktas metodes | Var būt abstraktas un ne-abstraktas metodes |
Tam ir tikai galīgie mainīgie | Tas ietver ne-galīgos mainīgos |
Tam ir tikai statiskie un galīgie mainīgie | Tam ir statiski, nestatiski, galīgi, galīgi mainīgi mainīgie |
Abstraktā klase netiks ieviesta | Var ieviest saskarni |
Īstenots, izmantojot atslēgvārdu “īsteno” | Īstenots, izmantojot atslēgvārdu “paplašina” |
Var paplašināt tikai saskarni | Var paplašināt Java klases un saskarnes |
Biedri pēc noklusējuma ir publiski | Locekļi var būt privāti un aizsargāti |
// Kopsavilkuma klases piemērs
pakete abstactVSinterface abstrakta klase Forma {String objectName = '' Forma (String name) {this.objectName = name} abstrakts publiskais dubultā apgabals () abstract public void draw ()} klase Taisnstūris paplašina Shape {int garums, platums Taisnstūris (int garums int platums, virknes nosaukums) {super (nosaukums) this.length = garums this.width = width} @Override public void draw () {System.out.println ('Taisnstūris ir uzzīmēts')} @Override public double area () {return (double) (length * width)}} klase Aplis izplešas Forma {double pi = 3,14 int rādiuss Aplis (int rādiuss, Stīgas nosaukums) {super (nosaukums) this.radius = rādiuss} @ Pārvarēt public void draw () { System.out.println ('Aplis ir uzzīmēts')} @Orride public double area () {return (double) ((pi * radius * radius) / 2)}} class Edureka {public static void main (String [] args ) {Shape rect = jauns taisnstūris (20, 30, 'Taisnstūris') System.out.println ('Taisnstūra laukums:' + rect.area ()] Formas aplis = jauns Circle (20, 'Cicle') System.out .println ('Apļa laukums ir:' + circle.area ())}}
Izeja:
Taisnstūra laukums: 600,0
Apļa laukums ir: 628,0
// Saskarnes piemērs
paketes absVSint saskarne Forma {void draw () double area ()} klase Taisnstūra rīki Forma {int garums, platums Taisnstūris (int garums, int platums) {this.length = garums this.width = width} @Override public void draw () {System.out.println ('Taisnstūris ir uzzīmēts')} @ Pārvarēt publisko dubulto laukumu () {return (double) (garums * platums)}} klase Circle implements Shape {double pi = 3,14 int rādiuss Circle (int rādiuss) {this.radius = radius} @Orride public void draw () {System.out.println ('Aplis ir uzzīmēts')} @Override public double area () {return (double) ((pi * rādiuss * rādiuss) / 2)}} klase Edureka {public static void main (String [] args) {Shape rect = new Taisnstūris (20, 30) System.out.println ('Taisnstūra laukums:' + rect.area ()) Formas aplis = jauns aplis (20) System.out.println ('Apļa laukums:' + aplis.apgabals ())}}
Izeja:
Taisnstūra laukums: 600,0
Apļa laukums: 628,0
Ar to mēs esam nonākuši pie šī raksta beigām. Es ceru, ka jūs esat sapratuši abstrakcijas, sintakses, funkcionalitātes, abstrakcijas noteikumu nozīmīgumu Java un ar tiem saistītus praktiskus piemērus.
ms sql apmācība iesācējiem
Tagad, kad esat sapratis Java pamatus, pārbaudiet Autors: Edureka, uzticams tiešsaistes mācību uzņēmums ar vairāk nekā 250 000 apmierinātu izglītojamo tīklu visā pasaulē. Edureka Java J2EE un SOA apmācības un sertifikācijas kurss ir paredzēts studentiem un profesionāļiem, kuri vēlas būt Java izstrādātāji. Kurss ir paredzēts, lai dotu jums iespēju sākt Java programmēšanu un apmācīt gan pamata, gan uzlabotas Java koncepcijas, kā arī dažādas Java struktūras, piemēram, hibernēt un Pavasaris .
Vai mums ir jautājums? Pieminiet to šī emuāra “Abstract Classes in Java” komentāru sadaļā, un mēs pēc iespējas ātrāk sazināsimies ar jums.