Dit artikel is een spiegelartikel van machinevertaling, klik hier om naar het oorspronkelijke artikel te gaan.

Bekijken: 23140|Antwoord: 4

[Bron] C# _OOP kennispuntnotities

[Link kopiëren]
Geplaatst op 18-11-2014 19:24:58 | | |
Dit bericht is voor het laatst bewerkt door Delver_Si op 18-11-2014 19:43

Hoofdstuk 1 (C#OOP
1..NET Framework(Gelijk.)JavainJDK
2.Inbegrepen2Secties: Framework Library (Toolkit),CLRCTSCLS
Hoofdstuk 2 (C#OOP
1.C #Syntaxis: Voornamelijk contrasteren metJavaHet verschil
1) datatype
       StringSnaarC #van"S"Kleine en hoofdletters zijn prima, meestal kleine letters.JavaHoofdlettergebruik
       BooleBoolJavaSchrijvenBooleans
2) variabelen en constanten
       Maak een impliciete variabele:VarAlternatieve datatypen (zie voorbeelden uit leerboeken)
       Definieer constanten: Voeg toe voordat je variabelen definieertConst, wat betekent dat de variabele slechts één keer een beginwaarde kan krijgen en later niet kan worden aangepast
3operator, expressie (enJavaHetzelfde)
4Controle-instructies
       als-anders(Ibid.)Java
       Schakel1.()Je kunt snaren gebruiken om te vergelijken.JavaEcht niet
                 2.ElkZaakDaarna moet het worden opgeschrevenpauze;  JavaJe hoeft het niet te schrijven
       do-while, while, voor:( hetzelfdeJava
       voor
C#-syntaxis: foreach (naam van het datatype element in array of collectieobject) {...}
Java-syntaxis: voor (naam van datatype element: array of collectieobject) {...}
2.Array
1Hetzelfde geldt voor eendimensionale arraysJava, maar[]kan niet na een variabele worden geschreven
2Multidimensionale arrays2Soort, één soort van hetzelfdeJava, nog een:int[,] = nieuwe int[3,3]; 2De betekenis van elk schrift is anders
3.Telling: is een aangepast datatype, vergelijkbaar met een verzamelingstype van meerdere constanten
1Syntaxis:
Definitie: enum enum typenaam {constante 1, constante 2, constante 3,...}
Declaratie: de naam van de typenaamvariabele opsommen;
Initialiseren: variabele naam = enumeratietype naam. constante 1;
2Gedefinieerde positie: inHoofdpersonenMethode buiten geschreven, ofKlasseAan de buitenkant geschreven
4.Gegevenstypeconversie:Convert.ToXXXX(Elke vorm van data); -Converteer elk type data naar een gespecificeerd type data
Hoofdstuk 3 (C#OOP
1Klasse: Een computer simuleert de realiteit, beschrijft een abstractie van een echt ding, en de klasse is een aangepast samengesteld datatype
Noteer de relevante informatie samen voor een gemakkelijke bediening
1) klasse2Hoofdleden: attributen, methoden
2Gedefinieerde locatie: Maak meestal een nieuwe aanKlasseHet document is afzonderlijk of op andere plaatsen geschrevenKlasseBestanden naast elkaar geplaatstKlasseschrijf
3Definitiesyntaxis:
Naam van de openbare klasse
                 {
                        //Eigenschappen
                            publicstring id;
                            publicstring-naam;
                        //methode
                        public void study(){ Console.WriteLine("Ik hou van leren”); }
}
2.Object: Een specifieke implementatie van een klasse, die een specifiek object beschrijft, dat kan worden begrepen als een variabele van een aangepaste klasse
1Geïnstantieerd object: (Gebruik van dezelfde variabele.)3Stapjes)
       Klassenaam Objectnaam= nieuwKlassenaam();
       Of:
       Klassenaam Objectnaam(Variabele naam); //Verklaar een object
       Objectnaam= nieuwKlassenaam(); //Initialiseer dit object(variabele)
2Gebruikt object: Gebruik over het algemeen de leden van het object (attributen en methoden)
Gebruik attribuut: objectnaam. Attribuutnaam
Hoe te gebruiken: objectnaam. Methodenaam ();
3.Bouwmethode Gebruik bij het instantiëren van een object "NieuwKlassenaam()Klassenaam()Het is een constructiemethode die wordt gebruikt om objecten te construeren.
(1) De constructiemethode wordt automatisch gegenereerd bij het definiëren van de klasse, die verborgen is.
(2) De constructiemethode kan worden herschreven, en de constructiemethode wordt bijvoorbeeld aangeroepen wanneer het object wordt geïnstantieerd.
Als je een beginwaarde aan een object wilt toewijzen, kun je parameters toevoegen aan de constructiemethode
4.Als de beginwaarde onzeker is, kan deze worden geïmplementeerd met overload.
(Methode-overload: Zelfde methodenaam, andere parameterlijst.)1, nummer;2, type;3, orde)
Opmerking: (1) De naam van de constructiemethode is hetzelfde als de klassenaam, en er is geen retourwaarde (void is niet geschreven)
(2) De verborgen constructiemethode zonder parameters wordt na handmatig schrijven overschreven.
(3) Bij het definiëren van een klasse in het algemeen worden twee constructiemethoden gebruikt: zonder parameters en met parameters toegewezen aan alle attributen.
5.Hoe onderscheid je tussen parameternamen van constructmethodes en attribuutnamen als ze hetzelfde zijn?
dit: Geeft dit type object aan. (Object van de huidige klasse)
Gebruik dit bij het specificeren van attributen
6.Naamruimte: Gelijk aan mappen
       Als de klasse in een andere map (naamruimte) wordt geplaatst, kan dit worden gedaan door:Name van de naamruimte.KlassenaamToegang
       Het kan ook als bovenaan de klas worden geschrevenMet behulp vanpaden, en de volgende klassen hoeven geen paden te hebben
7.Toegangsmodifiers:
openbaar: Openbaar, overal beschikbaar
intern: De standaard, kan worden weggelaten en kan binnen dezelfde naamruimte worden gebruikt
beschermd: beschermd, kan worden gebruikt tussen ouder- en kindklassen
Privé: Privé, alleen jij kunt het gebruiken
8.Waardetypen en referentietypen (zie de eerder geleerdeintHet verschil tussen array en array argument call)
Waardetypes: int, double en andere acht basisdatatypen, enums, structs (later te leren)
Referentietype: array, klasse
Opmerking: String is speciaal, het is een referentietype, maar tegelijkertijd een value pass
9.In- en uitpakken
       Bin: Zet het waardetype om naar een referentietype
       Unboxing: Zet het referentietype om naar een waardetype
Hoofdstuk IV
1. refenUitTrefwoorden:
       Functie: Geef de variabele van het waardetype door als referentietype
       Schrijfmethode: Voeg respectievelijk vóór de fysieke parameter en de reële parameter opScheidsrechterUit
       Notitie:1.Bij het definiëren van een methode,ScheidsrechterUit) wordt geschreven vóór het parameterdatatype
                2.Bij het aanroepen van een methode,ScheidsrechterUitHet reële argument daarna kan geen constanten schrijven, maar alleen variabelen
                3. refenUitHet verschil:UitDe volgende parameter kan een niet-geïnitialiseerde variabele zijn,ScheidsrechterEcht niet
2. statischModifier: statisch
       Waar te gebruiken:statischGeschreven in de toegangsmodifier (Publiekenzovoort).
       Gebruikte objecten: klassen, eigenschappen, methoden
       Notities:1. statischBij het wijzigen van een klasse moeten alle eigenschappen en methoden in die klasse zijnstatischvan
              2.GebruikstatischDe eigenschappen en methoden van modificatie worden direct via de klassenaam weergegeven.ATTRIBUUT (Klassenaam.methode) om aan te roepen
3.Overbelasting van methoden: ReferentiesWinformKennispunten
Hoofdstuk 5
1.Struct: Gegevenstype vergelijkbaar met een klasse (voorganger van een klasse)
       Definitie: Hetzelfde als klasse, putKlasseSleutelwoorden veranderd instructDat is het
       Voorbeeld:struct Student
{
    publieke snaarnaam;
     Public Void Study()
{}
}
       Verschillen met klassen:1.Structs zijn waardetypes, klassen zijn referentietypen (nadruk)
                            2.Structs kunnen zonder worden uitgezondenNieuwInstantie, de klasse moet worden gebruiktNieuw
                            3.Structs kunnen niet worden geërfd, klassen kunnen worden geërfd
2.Attributen: Gebruikt om lidvariabelen in de klasse te encapsuleren (enkele beperkingen aan leden toe te voegen via methoden)
       Syntaxis:privé-snaarnaam;  //
                publieke string Naam //Let op de hoofdletters van de eerste letter
{
    get{ return name; } // Leesattributen
    set{ naam = waarde; } // Schrijfattributen
}
       Auto-eigendommen:3.0Editie en hogere functies, eenvoudiger schrift
       Syntaxis:publieke string Naam { get; set; }
3.Indexer: Gebruikt om de leden van een arrayvariabele in een klasse te encapsuleren en te optimaliseren hoe elementen in de array worden gevonden
       Schrijf over het algemeen2Soortenindexer
Syntaxis 1: Subscriptindexer
publiek Student dit[int index]
        {
            get{ return students[index]; }
           set { students[index] = waarde; }
        }
Syntaxis 2: Stringindexer // In het algemeen zijn er alleen leeseigenschappen, geen schrijfeigenschappen
publiek Student dit[snaarnaam]
        {
            Toevoegen
            {
                Studentstu = nul;
                foreach(Student s inthis.students)
                {
                    als(s.Name == naam)
                    {
                        stu = s;
                    }
                }
                returnstu;
            }
        }
    Gebruik: Objectnaam[index]of Objectnaam[“String”]
Hoofdstuk 6
1.Delegate: Een delegate is een datatype dat kan worden gebruikt om de handtekening van een methode op te slaan door een variabele die met dit datatype is gedeclareerd
      Functie: De methodnaam kan als parameter worden doorgegeven
Gebruik: 1. Definieer delegatie
publieke delegate return value type gedelegeerde type naam (parameter type parameter parameter 1,...);
2. Declareer en instantieer delegatevariabelen (voor delegate bindingsmethode: retourwaardetype en parameterlijst moeten consistent zijn)
    Delegatetypenaam Delegatevariabelnaam = nieuwe Delegatetypenaam (methodehandtekening); Methodehandtekening doet niet ()
3. Delegatie inroepen
    Gedelegeerde variabelenaam (parameter 1,...);
       Functies: Delegates kunnen aan meerdere methoden worden gekoppeld”+=”,Je kunt de opgegeven methode ook ongedaan maken-=”
Anonieme methode: definieert geen methode (geen methodenaam), en bindt de inhoud van de methode direct aan de delegate
2.Gebeurtenis: Ingekapselde gedelegeerde variabele (equivalent aan de relatie tussen attributen en lidvariabelen in een klasse)
Gebruik: Premisse: Definieer delegatie //Schrijf buiten elke klas
         1.Definieer een gebeurtenis (d.w.z. declareer een ingekapselde delegatevariabele)//Geschreven in de gebeurtenisbron
              Openbaar evenementNaam van het besteltype Naam van het incident;
         2.Abonneer je op evenementen (om de gebeurtenismethode te binden)
              Naam van het incident+= nieuwNaam van het besteltype(Methodehandtekening); //Aanpak voor incidenthulpverleners
         3.Een evenement oproepen (vergelijkbaar met het oproepen van een afgevaardigde)//Geschreven in de gebeurtenisbron
              Naam van het incident(parameter1,…);
Opmerking: Incidenten betreffen doorgaans2Objecten: Gebeurtenisbronnen en Incidenthulpverleurs
Hoofdstuk VII
1.Overerving: De subklasse (afgeleide klasse) erft de ouderklasse (basisklasse), en de subklasse heeft de attributen en methoden van de ouderklasse
       Syntaxis: (bij het definiëren van een klasse) Subcategorieën:Vaderlijke klasse
       Eigenaardigheid:1.Enkelwortel. Een subklasse kan slechts één ouderklasse erven.
       Eigenaardigheid:2.Overdraagbaarheid. AlsAErfenisBBErfenisC, danAook geërfdC
2. beschermd:(beschermde) lidvariabelen of methoden die ermee zijn aangepast, kunnen alleen door zichzelf of zijn subklassen worden gebruikt
3.Constructmethode in erfenis: Roep eerst de ouder-constructor aan, en roep daarna de kind-klasse constructor aan
Methode 1: Impliciete aanroep: Standaard (zonder enige specificatie) roept de subklasse de constructmethode van de ouderklasse aan zonder parameters
Methode 2: Expliciete aanroep: Specificeer een constructiemethode die de ouderklasse aanroept.
publieke zoon (snaarnaam, snaargeslacht, snaarkleur)
            : basis (naam, geslacht)
        {
            hoofdkleur = kleur;
        }
4. verzegeld: Als je klasse niet geërfd wil worden, kun je dat trefwoord toevoegen
5.Herschrijfmethoden in overerving (Override(polymorfisme)
       Syntaxis: De methode van de ouderklasse wordt gebruiktvirtueel(of.)Override) modificatie, subklassen kunnen worden gebruiktOverrideHerschrijf het
       Functie: ReferentiegevalLes7
Opmerking: Als een kindklasse een ouderklasse erft, kun je een kindklasseobject in de referentie van de ouderklasse plaatsen
6.Zware belasting (Overbelasting) en herschrijven (Override) verschil
Onderscheiden:1。 Overloading is een klasse met meerdere methoden met dezelfde naam; Herschrijven is een methode in twee klassen (ouder- en kindklassen) met dezelfde naam.
       2.De naam van de overload-methode is hetzelfde, maar de parameterlijst is anders; De naam van de herschrijfmethode is hetzelfde, en de parameters zijn hetzelfde, gebruikvirtueelwaarbij de oudermethode wordt aangepast,OverrideModificeer subklasse-methoden
Hoofdstuk 8
Abstracte methode: gebruikSamenvattingMethoden van verzorging
1.Abstracte klasse: gebruikSamenvattingModifierklasse (Openbare abstracte klasseKlassenaam)
       Eigenaardigheid:1.Abstracte klassen kunnen geen objecten instantiëren en kunnen alleen worden geërfd door subklassen
                2.Als er een abstracte methode in een klasse is, dan moet de klasse een abstracte klasse zijn; Maar het definiëren van een abstracte klasse hoeft niet per se een abstracte methode te bevatten.
                3.Abstracte klassen kunnen concrete methoden hebben (niet-abstracte methoden)
                4.Wanneer een subklasse een abstracte klasse erft, moet zij alle abstractiemethoden in die abstracte klasse implementeren, tenzij de subklasse ook een abstracte klasse is
                5.Abstracte klassen kunnen constructiemethoden hebben, maar ze kunnen niet op zichzelf worden aangeroepen, ze worden naar subklassen aangeroepen
2.Interface: Definieer een standaard en specificatie met het trefwoordInterface, interface is een datatype
       Notitie:1.De interface kan alleen methoden, eigenschappen, indexers en gebeurtenissen declareren
                2.De inhoud in de interface is standaard volledigPubliek, dus er is geen noodzaak om modifiers toe te voegen, als je het schrijft, zal er een fout worden gecompileerd
                3.Interfacenamen worden met hoofdletters geschreven"Ik"Begin
                4.Als een klasse een interface implementeert, moet alles in de interface geïmplementeerd zijn, tenzij de klasse een abstracte klasse is
       Eigenaardigheid:1.Interfaces kunnen van meerdere erven (een klasse kan slechts één ouderklasse erven, maar meerdere interfaces kunnen tegelijkertijd worden geïmplementeerd)
                2.De geërfde ouderklasse moet op de eerste plaats na ":" worden geschreven, en de daaropvolgende interfaces moeten gescheiden worden door ","
                3.Als een klasse meerdere interfaces met dezelfde methodenaam implementeert, moet de interface worden geïmplementeerd met een display
                4.Interfaces kunnen worden gebonden
5. De interface als parameter, polymorfisme, kan ook worden gerealiseerd
3.isenalsGebruik
       is: Beoordeel of een object een bepaald type is,Als het een retour istrue, als niet retournerenfalse
       Voorbeeld:als(c is IPRINT)
     als: Zet een object om in een bepaald type
     Voorbeeld: IPrint c1 = c als IPrint;
4.Het verschil tussen abstracte klassen en interfaces (zie het leerboekP189

C#OOP知识点.rar

12,61 KB, Downloadtijden: 2, Downloadpunten: -1 punt voor prestige, -1 punt voor bijdrage

Verkoopprijs:1 MB [Opname]





Vorig:Gebruik phpmyadmin of de opdrachtregel om het rootwachtwoord van MySQL aan te passen en vind de oplossing voor de MySQL-inlogfout na het herstarten....
Volgend:De derde golf van de honderd-yuan Goddelijke Komedie is hilarisch op het internet. Ik wil mijn honderd yuan
Geplaatst op 18-11-2014 19:40:08 |
De prijs is 5 dollar, wat op dit forum te duur is: 1 geld = 1 RMB
 Huisbaas| Geplaatst op 18-11-2014 19:43:46 |
Admin geplaatst op 18-11-2014 19:40
De prijs is 5 dollar, wat op dit forum te duur is: 1 geld = 1 RMB

Het is veranderd
Geplaatst op 18-11-2014 22:12:20 |
Ik denk dat 1 geld gelijk moet zijn aan een dubbeltje
Geplaatst op 18-11-2014 23:13:08 |
Helaas is het forum nog steeds niet erg populair, het is zelfs al 2 maanden actief, en het is niet slecht om dit te kunnen doen

Je moet nog steeds volhouden!
Disclaimer:
Alle software, programmeermaterialen of artikelen die door Code Farmer Network worden gepubliceerd, zijn uitsluitend bedoeld voor leer- en onderzoeksdoeleinden; De bovenstaande inhoud mag niet worden gebruikt voor commerciële of illegale doeleinden, anders dragen gebruikers alle gevolgen. De informatie op deze site komt van het internet, en auteursrechtconflicten hebben niets met deze site te maken. Je moet bovenstaande inhoud volledig van je computer verwijderen binnen 24 uur na het downloaden. Als je het programma leuk vindt, steun dan de echte software, koop registratie en krijg betere echte diensten. Als er sprake is van een inbreuk, neem dan contact met ons op via e-mail.

Mail To:help@itsvse.com