? Skaberne af Java designet programmeringssprog til at repræsentere et objekt -orienteret programmering paradigme fra jorden op . Begreberne objekter , klasser , arv og polymorfi er fremherskende selv i strukturen af standard Java- biblioteker. Abstract klasse, et direkte resultat af disse begreber , findes også i den almindelige biblioteket. En abstrakt klasse , såsom InputStream kan i visse sammenhænge , returnere en InputStream objekt gennem sin constructor metode. Dette objekt kan derefter passe ind mange input /output sammenhænge inden for et program. Klasser i Java
Java-klasser , ligesom klasser i andre objektorienterede programmeringssprog , repræsenterer planerne for "objekter" , som programmører kan " instantiere " i deres programmer. Det betyder blot, at når en programmør ønsker at skabe et stykke data , der styrer noget som en netværksforbindelse, for eksempel, kunne programmøren skabe en " Socket " objekt , som opfører sig i overensstemmelse med de regler, der er fastsat i " Socket " , klasse
Class Constructors
Deres eksisterer som en del af hver klasse , en " konstruktør ", der dikterer , hvordan objekter oprettet fra denne klasse arbejde på skabelsen. . Typisk, hvis en klasse skaberen ikke angiver en konstruktør , vil Java Virtual Machine (JVM ) anvender en standard-constructor , som afsætter data og hukommelse til objektet som defineret af sin klasse. Dog kan skaberen af klassen skabe en konstruktør som også bestemmer, hvordan variable initialiseres , og hvilke skridt er at ske, når klassen er oprettet . Den standard-constructor , uanset defineret af programmør eller ej, aktiveres, når brugeren af klassen opretter et objekt ved hjælp af " nye" nøgleord.
The InputStream Class
< br >
InputStream klasse, som enhver anden klasse , har en konstruktør. Den InputStream klasse, dog repræsenterer et " abstrakt "-klassen . Dette betyder , at InputStream klassen ikke er beregnet til brug alene , men snarere som en skabelon for andre input og output klasser. Programmøren kan påberåbe konstruktøren af InputStream klasse, som vil returnere et InputStream objekt. Men denne returnerede objekt arbejder for at hjælpe i skabelsen af andre Input objekter, såsom FileInputStreams eller BufferedReader objekter.
InputStreams i brug
Siden InputStream repræsenterer en klasse, og ikke en metode , betyder det ikke returnere noget på egen hånd. Snarere , konstruktøren af klassen returnerer en initialiseret InputStream objekt til anvendelse af programmøren . Men som en abstrakt klasse , skal programmører ikke bruge InputStream alene, men som en del af andre objekter, der arver funktionalitet fra det . Eller , for eksempel, kan programmøren brug af princippet om polymorfi at erklære en InputStream objektet og derefter tildele den til en anden type objekt, der arver fra det : Hej
InputStream er , er = new FileInputStream (); < br >