AP Computer Science A: Wat werkelijk telt
Een praktische gids voor het AP CS A examen — wat wordt getoetst, hoe verlies je punten, en waar je je resterende studietijd het best besteedt.
Het AP Computer Science A examen beloont studenten die Java's eigenaardigheid in en uit kennen, niet alleen studenten die programmeren in abstracte zin begrijpen. Twee delen, elk 90 minuten: 40 meerkeuzevragen goed voor 50% van je score, en 4 open vragen goed voor de overige 50%. De meeste studenten verliezen punten op het open-antwoord deel niet omdat ze het concept niet begrijpen, maar omdat ze Java syntaxis onder tijdsdruk verkeerd hanteren.
De vier open vragen zijn niet willekeurig
College Board heeft de FRQ-structuur jarenlang consistent gehouden. Vraag 1 gaat bijna altijd over methodes en controlestructuren op een enkele klasse. Vraag 2 betreft een klasse die een interface implementeert of een andere klasse uitbreidt. Vraag 3 gaat over tweedimensionale arraymanipulatie. Vraag 4 behandelt ArrayList of andere collectieklassen. Dit van tevoren weten betekent dat je elk vraagtype specifiek kunt oefenen in plaats van generieke "AP CS oefenvragen" te doen.
Voor Vraag 3 vooral moet je het nested-loop patroon voor het doorlopen van een tweedimensionale array zowel rij-naar-rij als kolom-naar-kolom uit je hoofd kennen:
for (int row = 0; row < arr.length; row++) {
for (int col = 0; col < arr[row].length; col++) {
// process arr[row][col]
}
}
De beoordelaars ("Readers" genoemd) gebruiken een rubric die gedeeltelijk krediet geeft voor specifieke regels correcte logica, zelfs als je eindantwoord fout is. return null; schrijven als plaatshouder wanneer je vast zit op een methode die een object retourneert, levert meer op dan het leeg laten.
Meerkeuzevallen die elk jaar terugkomen
Vragen over == versus .equals() voor String-vergelijking verschijnen vrijwel bij elke examenafname. == vergelijkt referenties voor objecten; .equals() vergelijkt inhoud. Dit verwarrt studenten omdat Java's string literal pool soms == true laat retourneren voor strings die logisch gezien niet gelijk zouden moeten zijn naar referentie, wat precies het soort valkuil is dat het examen graag toetst.
Operatorprioriteit en integer deling zijn de andere terugkerende vallen. 7 / 2 evalueert naar 3, niet 3.5, omdat beide operanden ints zijn. Cast één operand naar double, zoals (double) 7 / 2, om het decimale resultaat te krijgen. Vragen toetsen ook wat gebeurt als je int en double in expressies mengt zonder expliciet cast — weet dat Java automatisch promoveert in gemengde rekenkunde maar afkapt wanneer je een double resultaat terug toewijst aan een int variabele.
Overerving en polymorfisme wegen zwaarder dan ze lijken
Grote Idee 4 (Class en Object Oriented Programming) verschijnt in beide delen, niet alleen in specifieke overervingsvragen. Begrijp het verschil tussen overriding en overloading, en weet dat Java overridden methodes in runtime oplost op basis van het werkelijke objecttype, niet het gedeclareerde referentietype:
Animal a = new Dog();
a.makeSound(); // calls Dog's version, not Animal's
Dit is runtime polymorfisme, en het examen toetst dit door je een referentie van het ene type te geven die naar een object van een subklasse wijst, en dan te vragen welke methode daadwerkelijk wordt uitgevoerd. Statische methodes en instantievariabelen volgen deze regel niet — ze worden opgelost op basis van het gedeclareerde type, en dat onderscheid is een favoriete examenval.
Array en ArrayList mechanica die je automatisch moet kennen, niet opzoeken
Je hebt geen toegang tot Java documentatie tijdens het examen. Memoriseer deze zonder aarzeling:
array.length(geen haakjes, het is een veld)list.size()(haakjes, het is een methode)list.add(index, element)verschuift alles naar rechtslist.remove(index)verschuift alles naar links en retourneert het verwijderde element- Elementen verwijderen uit een ArrayList terwijl je vooruit itereert met een for-each loop gooit
ConcurrentModificationException; itereer in plaats daarvan achteruit met een geïndexeerde loop bij verwijdering
Dat laatste punt is werkelijk een van de meest voorkomende logicafouten in FRQ-antwoorden, en Readers zien het constant.
Hoe je je laatste twee weken besteedt
Doe volledige FRQs uit het verleden onder werkelijke timed omstandigheden — College Board publiceert echte voorbije examens met scoring guidelines die precies laten zien hoe punten werden toegekend. Lees de scoring guidelines goed; ze onthullen hoe granulair het gedeeltelijke krediet werkelijk is, soms tot op een enkele correct gedeclareerde variabele. Voor meerkeuzevragen, concentreer reviewtijd op recursie tracing en tweedimensionale array indexering, aangezien dat is waar onachtzame fouten het meest punten kosten relatief aan hoe eenvoudig het onderliggende concept eigenlijk is.
Als je de Java fundamentals hieronder sterker wilt opbouwen, of uitgewerkte voorbeelden van klassen, overerving, en arraymanipulatie stap voor stap uitgewerkt wilt zien, check de Python en Computer Science segmenten in Korra Studio's bibliotheek voor meer gestructureerde oefening.
Geschreven met AI-ondersteuning, herzien en gepubliceerd door Michal Pilch (CISSP), Korra Studio.
Dit is één aantekening uit de kennisbasis van Korra Studio — het platform koppelt elk onderwerp aan 1-op-1 mentoring.
Gratis beginnenarrow_forward