Java Object-Oriented Programming: AP Computer Science B
- 51.5 hours on-demand video
- 46 articles
- 490 downloadable resources
- Full lifetime access
- Access on mobile and TV
- Certificate of Completion
Get your team access to 4,000+ top Udemy courses anytime, anywhere.Try Udemy for Business
- Learn object-oriented programming in Java.
- Study basic algorithms and data structure using Java
- Meet the course requirements for AP Computer Science B (2nd Semester)
- Complete review materials for AP Computer Science Exam and College Level Java Programming Courses
Overview of AP Computer Science Course as a whole. It also includes the table of contents for part 2 and part 3. Provide readers a good big picture of what to expect in the course. The slides (.pdf file) is also made downloadable.
Overview of Part 2 (AP Computer Computer Science B) and the related issues in AP Exam.
Show student the resources and other educational materials provided by the Lecturer. To guide student to learn Programming step by step.
Discuss classes and objects for data record with states and behaviors. States are properties or variables. Behaviors are methods. Any simple example of SimpleCircle class is used to show the idea of class and objects.
Discussion on the constructor methods for creating objects.
Discuss how to design an immutable class. Three principles:
(1) All data fields must be private.
(2) No public setter methods.
(3) No accessor methods should return reference data type so that the reference data type may provide a back door (some mutator metthod) to update internal data which is supposed to be immutable.
Show the internet resources available for eC Learning Channel by Dr. Eric Chou to support this course.
My Udemy: https://www.udemy.com/user/eric-chou/
Youtube channel: https://www.youtube.com/c/EricChouPHD
Review of classes and objects and provide overview for the Object-Oriented Programming in Unit 4 and Chapter 10.
To design classes, you need to explore among classes. The common relationships among classes are association, composition and inheritance.
Lab project on stack of integers. This is the first project in a series on user-defined data structure using object-oriented programming. These basic data structure will be very useful in AP Exam. It is also a good introduction for Unit 5 (Algorithms and Data Structure).
This lab project is also a good example for OOP design guidelines for coherence, completeness and design styles.
Inheritance enables you to define a general class (i.e., a superclass) and later extend it to more specialized classes (i.e. subclass)
Show the nature and need for polymorphism and why it makes Java language platform-dependent with dynamic binding (linking)
Exceptions are thrown from a method. The caller of the method can catch and handle the exception.
Discuss the keyword assert that can be used to check the program correctness. If the assertion is false, an error will be raised. This operator make initial error for program checking and testing. It is replaced by JUnit Test which is in another course that we have "Java JUnit for Unit Testing
After learning the object-oriented programming, students need to understand what is the purpose for object-oriented programming. OOP is widely used for class management and library building. In modern terms, the packages of library code are called module, package, application programming interface (API), or even bigger, design framework. All of these are built up using object-oriented programming technology. The Java Core classes means the classes available in Java development kit (JDK) that came with the Java compiler.
An abstract class cannot be used to create objects. An abstract class can contain abstract methods, which are implemented in concrete subclasses.
The Iterable Interface has one method iterator(). The Iterator Class has hasNext(), next() and remove() methods.
The ListIterator Class many more methods.
These three interfaces are useful to allow the classes that implements these interfaces to have the iterator to traverse through the class with these three interfaces.
Compare and contrast between abstract class and interface. Both of them are useful to provide a class with extra feature. Abstract class can be viewed as core data class, while interface can be viewed as a collection of unimplemented methods. An abstract class implemented an interface is a core data class with the collection of unimplemented methods.
Use the simplest Model-View-Controller (MVC) design pattern, front controller design pattern, to demonstrate idea of behavioral design pattern.
Front controller design pattern can also be named as "single dispatcher design pattern" is one of the simple but powerfule design pattern. It is a good example to understand design patterns.
Introducing the recursion pattern in real-life and computer arts. Using a recursive rectangle drawing program to show how to create visual recursion.
Overview of Algorithms and Algorithm study. Introduce these important concepts and their study domain.
Use Euclid's algorithm to show that good algorithms do not come from hard-working people but from smart-working people. A person cannot invent good algorithm by only studying other people's algorithm. Instead, he must know about the nature of problem pretty well to invent a good algorithm.
Demo the use of selection sort and the binary search for arraylist and array. The array and arraylist are of interface reference type. Interfaces are used as a combination of heterogeneous data object types.
- Finish the AP Computer Science Part 1: Java Programming Essentials or equivalent course.
- Minimum mathematical background: algebra I
[Please watch all preview videos before signing up this course]
[This is the 2nd semester of College Level Java Course. Please make sure that you have done 1st semester College Level Java equivalent course before signing up this course. You may signed up both at the same time but make sure you have enough capability to handle this course.]
This course covers the second semester of AP Computer Science which includes complete introduction for Java Object-Oriented programming. The course is suitable for people who are seeking for a on-line class for introduction to Java programming, who are preparing for AP Computer Science Exam in high school and who want to sharpen their knowledge in Java.
This part B course includes complete tutorials for Java Object-Oriented Programming, Program Analysis, and introduction to algorithms which included recursive programming, data structure and algorithm development. This course revolutionize the way computer science is taught. Instead of teaching textbook chapter by chapter.
This course will be focused on an example program in each lecture. Lucid big idea in computer science will be introduced by the example program. It is followed by explanation of Java syntax and other language features. Practice questions, quizzes, and programming exercises will be given thereafter to enhance the understanding of the idea and to help to improve programming efficiency and test scores.
A spiral study model is suggested for student to build up good programming habits and shorten learning cycles in programming.
I would proudly say that this is one of the best Java Programming course on-line ever.
In this course, you will get:
(1) On-line lectures (with .pdf slides)
(2) sample programs (in Java)
(3) Quiz and exams (in multiple choice format) with solution
(4) AP format exam with solution.
(5) Free-online textbook access.
(6) Free on-line related information links and book chapters.
(7) Demo programs
(8) Lab projects
(9) Chapter projects.
(10) Facebook Q&A support and Gmail responses.
- Working individuals who want to learn data structure and algorithms using Java
- Students who want to take AP Computer Science Exam
- Programmers who finished the first Java Programming course and seeking for Java Programming course at intermediate level.