? Skaperne av Java utviklet programmeringsspråket å representere et objekt - orientert programmering paradigme fra grunnen av. Begrepene objekter, klasser , arv og polymorfisme er utbredt selv i strukturen av standard Java-bibliotekene . Abstrakt klasse , et direkte resultat av disse konseptene , også eksistere i den generelle biblioteket. En abstrakt klasse som InputStream kan i visse sammenhenger , returnere en InputStream objekt gjennom sin konstruktør-metoden . Dette objektet kan da passe inn i mange input /output sammenhenger i et program. Klasser i Java
Java-klasser , som klasser i andre objektorienterte programmeringsspråk , representerer skissene for "objekter" som programmerere kan " instantiate " i sine programmer . Dette betyr ganske enkelt at når en programmerer ønsker å skape et stykke data som styrer noe som en nettverkstilkobling, for eksempel, kan programmereren lage en " Socket " objekt , som oppfører seg i henhold til reglene fastsatt i " Socket " ; klasse
Class Constructors
Deres eksisterer, som en del av hver klasse , en " konstruktør " som bestemmer hvordan objekter opprettet fra den klassen arbeidet på skaperverket. . Vanligvis , hvis en klasse skaperen ikke angir en konstruktør , vil Java Virtual Machine ( JVM ) bruker en standard konstruktør , som setter til side data og minne for objektet som er definert av sin klasse. Imidlertid kan skaperen av klassen lage en konstruktør som også bestemmer hvordan variabler er initialisert, og hvilke tiltak som er til å skje når klassen blir opprettet . Standard konstruktør, enten definert av programmerer eller ikke, aktiveres når brukeren av klassen skaper et objekt med den "nye " søkeord .
The InputStream Class
InputStream klassen , som alle andre klasse , har en konstruktør . Den InputStream klasse representerer imidlertid en "abstract" -klassen. Dette betyr at InputStream klassen ikke er ment for bruk av seg selv, men snarere som en mal for andre inn-og ut -klasser . Programmereren kan påberope konstruktøren av InputStream klasse , som vil returnere en InputStream objekt . Men fungerer denne returnert objektet til hjelp i etableringen av andre Input objekter, for eksempel FileInputStreams eller BufferedReader objekter .
InputStreams i bruk
Siden InputStream representerer en klasse , og ikke en metode , betyr det ikke tilbake noe på egen hånd. Snarere returnerer konstruktøren av klassen et initialisert InputStream objekt for bruk av programmereren . Men som en abstrakt klasse , bør programmerere ikke bruke InputStream på egen hånd, men som en del av andre gjenstander som arver funksjonalitet fra den. Eller , for eksempel , kan programmereren bruke prinsippet om polymorfisme å erklære en InputStream objekt , og deretter tildele den til en annen type objekt som arver fra det : en
InputStream er, er = new FileInputStream ();