Forskjeller mellom Definere en ikke-Special medlem Funksjon og en Constructor

Objektorientert programmering oppmuntrer programmerere å kapsle data i custom-laget datatyper som kalles klasser. Inne i disse klassene, kan programmereren definere oppførselen til objekter som er opprettet fra disse klassene gjennom implementering av metoder. Ikke alle metoder er skapt like, imidlertid. Non-spesielle metoder tjene et tydelig formål i gjennomføringen av et objekt i et program. Konstruktører er spesielle funksjoner som definerer hvordan objekter skapes og initialisert.

Klasser og objekter

I objektorientert programmering, klasser er skissene for spesielle datatyper som kalles "objekter" som programmerere kan skape i sine programmer. En klasse definerer hva slags handlinger et objekt kan gjøre, og hva slags data objektet inneholder. Innenfor klasser programmerer kan erklære "metoder" eller funksjoner, som arbeider med de data som finnes i en klasse for å utføre handlinger. Metoder kan ta form av typiske programmeringsfunksjoner, eller spesielle "konstruktør" klasser som definerer hvordan klassene er lagret i minnet.

klasse~~POS=TRUNC

Programmerere erklære klassemetoder inne i en klassedefinisjon, slik at andre programmerere kan bruke objekter uten å vite hvordan disse metodene funksjon. Klassemetoder vanligvis kommer i to former. Den første er den vanlige klassen metoden, som kan bli erklært som offentlig eller privat, avhengig av tilgangs klassen designeren ønsker å tillate. Disse metodene krever en instans av et objekt laget fra klassen for å kunne operere. Den andre typen klasse metode er en statisk klasse, i hvilken en bruker kan kalle metoden fra klassen uten å opprette et objekt.

klasse Constructors

En klasse konstruktør er en spesiell metode i en klasse som definerer hvordan et objekt fra en klasse er opprettet. Denne metoden er den første kalles når objektet instansieres, vanligvis gjennom den "nye" søkeord. Konstruktøren kan angi standardinnstillinger for klassevariabler eller fylle medfølgende datastrukturer. Designeren av klassen kan definere flere konstruktører for hver klasse, hver og en tar ulike argumenter eller gjøre forskjellige ting for å sette opp et objekt når det blir opprettet.

Starte Metoder og Constructors

Constructors påkalles når et objekt opprettes. Mens en klasse designer kan lage flere konstruktører for en klasse, kan hun valgte å forlate bygging av et objekt til standard konstruktør, som kompilatoren påkaller under objekt oppretting tildele minne for objektet. Konstruktøren påkaller bare under objekt oppretting. Vanlige metodene, på den andre hadde, kan vanligvis kalles når som helst i løpet av levetiden av objektet, og blir brukt til å utføre arbeid med det objektet. Mens konstruktører og ikke-spesielle metoder vises på overflaten bare for å være funksjoner, konstruktører utføre bare under oppretting og utføre en tydelig oppgave i livet til en gjenstand.