AP Computer Science A: Java Programming Classes and Objects
Offered By: Purdue University via edX
Course Description
Overview
In this computer science course, you will learn the basics of programming in the Java language, and cover topics relevant to the AP Computer Science A course and exam.
This course will cover:
- classes
- objects and object-oriented design
- fields and visibility
- constructors, mutators and accessor methods
- encapsulation
- interfaces
- the List interface
- method overriding
This course is for anyone interested in taking a first-level computer-programming course, particularly those who attend a school that does not provide a similar class.
No previous programming knowledge is needed, but it is recommended that learners be comfortable with the topics addressed in AP Computer Science A: Java Programming and AP Computer Science A: Java Programming Data Structures and Loops.
We are looking forward to helping you explore this exciting new world!
Syllabus
Unit Name or Timeframe: Methods and Classes (3 weeks)
- Object-oriented design and encapsulation
- Top-down development and functional decomposition
- State and behavior
- Fields and visibility
- Methods and parameters
- Calling methods and passing parameters by-value and by-reference
- Constructors and instantiation
- The static keyword
- Scope
- Method overloading
- Encapsulation
- Accessors and mutators
- Immutable objects
Unit Name or Timeframe: Interfaces (1 week)
- Interfaces and abstraction
- Interface implementation
- Reference types
- List interface and iterators
- Comparable interface
Unit Name or Timeframe: Inheritance (2 weeks)
- Inheritance and the Object class
- Public and private data and methods
- The super, this and null references
- Encapsulation and information hiding
- Inheritance using extends, recognizing single-inheritance
- Equality vs identity
- has-a vs is-a relationships involving inheritance and aggregation
- Method overriding
- The instanceof operator
Taught by
Sunil Prabhakar, Debbie Perouli and Phil Sands
Tags
Related Courses
C++ Programming: Object-Oriented DesignCodio via edX C++ Programming: A Hands-on Introduction
Codio via edX Java Programming: A Hands-on Introduction
Codio via edX Python Programming: A Hands-on Introduction
Codio via edX Mastering UX & Business App Development with OOP
Northeastern University via Coursera