第一部分:变量和操作符(Variable&Operator)
1、变量和变量类型(Variable and Type)
2、四大运算符:算法运算符(Arithmetic Operator)、比较运算符(Relational Operator)、逻辑运算符(Logical Operator)、赋值运算符(Assignment Operator)
3、输出(Output)
本章重点有两个:
一是除法运算符“/”和取余运算符“%”的使用,要记得整数除整数得到整数,并掌握取余的应用:判断奇偶,取出整数中的每一位数等。
二是逻辑运算符,尤其是通过德摩根定理化简的等价问题和真值表解决逻辑运算的问题。
第二部分:控制结构(Control Structure)
1、顺序结构(Sequential Structure)
2、分支结构 (Selection Structure)
3、循环结构(Loop Structure)
本章要掌握三种分支语句的区别和联系
熟练掌握for loop,while loop解决常见问题,对于循环的经典问题要重点记忆,在写loop代码时,学会往我们总结的经典代码上靠。本章是学习后面知识的基础,会综合其他章节内容一起考察。
第三部分:方法(Method)
1、方法的概念(Method)
2、方法的重载(Overload)
本章需要掌握构成方法的5个元素
理解方法的参数传递的方式,方法返回值的意义,方法间调用的方式。在AP考试中,方法有着重要的意义,大部分简答题的出题形式都是给定方法头,由你来编写方法体,因此,对方法的理解至关重要。同时,简答题中的第一题会考察前三章的内容。
第四部分:数组(Array)
1、一维数组的使用(One-Dimensional Array)
2、二维数组的使用(Two-Dimensional Array)
数组是AP计算机科学A考试的核心,有着至关重要的地位,简答题会有2题、选择题会有5-10题和数组有关,可以说数组是APCSA的半壁江山。需要同学们熟练掌握一维数组、二维数组的基本操作和应用,理解我们总结的相邻数组等5大问题。
同时,数组转换问题是近几年的出题趋势,需要重点掌握。
第五部分:字符串(String)
1、字符串的概念(String)
2、字符串的方法:length、equals、compareTo、indexOf、substring
字符串的地位在近几年考试中有所削弱,由单独考察改为结合其他知识一起考察,不再单独设立简答题。
对于字符串来说,要掌握AP考纲要求的5大方法,尤其是indexOf、substring方法,是考试String的重点,一旦考察String,有90%几率考察这两个方法,还要注意两种substring的区别,掌握类数组问题的写法。
第六部分:类和对象(Classes and Objects)
1、类的定义(Class)、成员变量(Variable)、构造函数(Constructor)、null、 static
2、对象的概念(Object)
3、封装性(Encapsulation)
Java是面向对象的编程语言,需要我们掌握如何构造一个类,理解类的三个组成部分的编写规则。
在AP考试中,会有一道简答题专门考察从零构造一个类,因此,需要我们提高从题目中搜索关键信息的能力。同时,类与数组、ArrayList结合的题目是考察的重点。
第七部分:继承和多态(Inheritance Polymorphism)
1、继承的概念(Inheritance)、父类(super)、子类(sub-class)
2、方法的重写(override)
3、多态的概念(Polymorphism)
本章是一个难度,好在APCSA只考选择题,本章内容我为同学们总结了继承4大考点和多态4大考点。对于继承,需要理解继承的作用,重点掌握“重载方法的调用规则”等4大考点。同样,多态也需要重点掌握“父亲不能使用子类方法”等4大考点。
第八部分:标准类和程序设计(Standard Class Design)
1、常见标准类(Standard Class):Math、Object、Integer、Double
2、程序设计(Design):瀑布模型(The Waterfall Model )
本部分比较简单,Math的random方法是常考点,对于其他标准类知道他们的作用即可。
第九部分:ArrayList
1、对象数组(Object Array)
2、ArrayList的使用
3、ArrayList的方法:add、get、set、remove、size
作为数组的2.0版本,ArrayList同样是APCSA的核心,需要我们熟练掌握AP考纲要求的ArrayList的6大方法,对于每一个方法都要非常清晰的知道方法参数的要求,返回值的意义。
尤其是ArrayList删除问题,是AP考试的常客。同时,重点掌握ArrayList的5大基本问题和数组转换问题,即便在2020年疫情突发,APCSA试卷只有两题的时候,也把其中一题给了ArrayList和数组的转换问题,足以看到它的重要性。
第十部分:递归和算法(Recursion Algorithm)
1、递归(Recursion)
2、查找算法(Search):二分查找(Binary Search)
3、排序算法(Sort):插入排序(Insertion Sort)、选择排序(Selection Sort)、 归并排序(Merge Sort)
递归和算法其实是最难的部分,但是由于AP考试只考察选择题,反而变为最容易拿分的部分。每年APCSA会有3-4个选择题考察递归,1-2个选择题考察算法。需要熟练掌握递归题目的推理问题。