課程信息
4.7
3,179 個評分
810 個審閱
專項課程

第 3 門課程(共 4 門)

100% 在線

100% 在線

立即開始,按照自己的計劃學習。
可靈活調整截止日期

可靈活調整截止日期

根據您的日程表重置截止日期。
中級

中級

完成時間(小時)

完成時間大約為25 小時

建議:6 weeks of study, 4-6 hours/week...
可選語言

英語(English)

字幕:英語(English), 韓語, 德語(German), 中文(簡體)

您將獲得的技能

Logic ProgrammingJava ProgrammingObject-Oriented Programming (OOP)Sorting Algorithm
專項課程

第 3 門課程(共 4 門)

100% 在線

100% 在線

立即開始,按照自己的計劃學習。
可靈活調整截止日期

可靈活調整截止日期

根據您的日程表重置截止日期。
中級

中級

完成時間(小時)

完成時間大約為25 小時

建議:6 weeks of study, 4-6 hours/week...
可選語言

英語(English)

字幕:英語(English), 韓語, 德語(German), 中文(簡體)

教學大綱 - 您將從這門課程中學到什麼

1
完成時間(小時)
完成時間為 3 小時

Welcome and Project Overview: Visualizing Data

Welcome to the first week of our course. In this week, we'll get started by introducing ourselves and the Google engineers who will be making appearances throughout the course. We'll also give you of the unique video series we provide and help you understand how to navigate the course to get the most out of it given your background and learning speed. Finally, we'll jump right into objects and designing classes. This might be a bit of review for some of you who might have learned this in your first programming course. If that's the case, feel free to jump ahead to the Practice Quiz at the end of the week. Let's get started!...
Reading
13 個視頻 (總計 47 分鐘), 8 個閱讀材料, 3 個測驗
Video13 個視頻
Welcome (Object Oriented Java Programming: Data Structures and Beyond Specialization)3分鐘
Welcome (Object Oriented Programming in Java Specialization)1分鐘
Project prototype4分鐘
Your Path through the Course5分鐘
Concept Challenges: what and why?3分鐘
In the Real World: Welcome from Google Engineers50
Introduction: Classes and Objects25
Core: Defining Classes and Creating Objects11分鐘
When I Struggled: Objects1分鐘
Core: Overloading Methods6分鐘
Core: Public vs. Private7分鐘
In the Real World: Public vs. Private access27
Reading8 個閱讀材料
A Customized Welcome to this Course10分鐘
After completing this course, you will be able to...5分鐘
Is this course right for me?10分鐘
Up Next: A short survey10分鐘
Project overview10分鐘
Additional Resources and Support10分鐘
By the end of this week you will be able to...5分鐘
A note about the main method2分鐘
Quiz3 個練習
Pre-Course Quiz26分鐘
Survey: Your goals for the course8分鐘
Basics of Objects10分鐘
2
完成時間(小時)
完成時間為 9 小時

Memory Models, Scope, and Starting the Project

We hope you’re excited about the project that we're starting to build -- we sure are! In this second part of this week, we'll walk you through setting up your system and working through your first assignment so you'll be having fun with it in no time. Before that though, we'll finish going over some of the fundamentals fundamentals of object oriented programming. Specifically, being able to trace code is a key skill in becoming a stronger programmer. Like the end of last week, the first part of this week might be a bit of a review of material you already learned in your first Java programming course. If that’s the case, you are always welcome to skip to the first graded assignment on Objects, Memory Models, and Scope....
Reading
16 個視頻 (總計 77 分鐘), 11 個閱讀材料, 4 個測驗
Video16 個視頻
Project: Module 1 Assignment Overview1分鐘
Project: Setting up the starter code in Eclipse4分鐘
Core: Drawing Memory Models with Primitive Data5分鐘
Support: Memory Models for Primitive Types3分鐘
Support: Setting Up and Running Examples in Eclipse2分鐘
When I Struggled: Compiling and Running Code55
Core: Drawing Memory Models with Objects8分鐘
Concept Challenge: Memory Models 15分鐘
Concept Challenge: Memory Models 25分鐘
Support: Memory Model Drawing Example5分鐘
Core: Introduction to Scope9分鐘
Concept Challenge: Scope6分鐘
Support: Putting it all Together Part 13分鐘
Support: Putting it all Together Part 210分鐘
Project: Module 1 Assignment Walkthrough4分鐘
Reading11 個閱讀材料
Remember to Choose Your Own Path10分鐘
By the end of this week, you will be able to...10分鐘
Getting ready to write code10分鐘
Important note for learners working offline10分鐘
Setting Up Java and Eclipse on Windows (and Linux)30分鐘
Setting Up Java and Eclipse on Mac30分鐘
Setting Up Unfolding Maps10分鐘
Support: Troubleshooting Common Issues10分鐘
Congratulations and quiz answers10分鐘
Programming Assignment Instructions
Congratulations and quiz answers10分鐘
Quiz4 個練習
Where to next?2分鐘
Working with Code2分鐘
Objects, memory models, and scope10分鐘
Programming Assignment Quiz (Do programming assignment FIRST)14分鐘
3
完成時間(小時)
完成時間為 8 小時

Graphical output: Creating GUIs and Displaying Data

Now that you have the tools to write and trace object oriented code, let’s get back to developing the project! In this first (real) part of the project, you will create an interactive graphical map that will display geospatial data. This is a highly interactive week, so make sure you’ve got Eclipse loaded up! We encourage you to play around as you watch the videos. Some of the code that we use in the videos is in the demos package in the starter code you set up for this course. Open it up and experiment with it while you're watching the videos. We also encourage you to dive right into the programming project, even before watching the videos, if you want. The programming assignment instructions are in the last lesson of this week - you can watch a video walkthrough of the instructions and also read the step-by-step directions in the accompanying reading. There’s lots of room for creativity, too, so have fun!...
Reading
23 個視頻 (總計 136 分鐘), 4 個閱讀材料, 1 個測驗
Video23 個視頻
Project: Module 3 Programming Assignment Overview1分鐘
Core: Graphical User Interfaces4分鐘
Core: Using PApplet11分鐘
When I struggled: GUIs27
Core: Resizing Images5分鐘
Core: Colors8分鐘
When I Struggled: Documentation1分鐘
Support: Setting up a Canvas7分鐘
Support: Drawing Happy Face7分鐘
Support: Loading and Displaying Images6分鐘
Core: Why Processing?1分鐘
Support: Using Documentation7分鐘
In the Real World: Documentation3分鐘
Core: Setting up map visualization9分鐘
Core: Adding markers5分鐘
Core: Using live data11分鐘
Bonus: Visualizing life expectancy29
Bonus: Setting up the map4分鐘
Bonus: Representing data8分鐘
Bonus: Coloring markers11分鐘
Support: ArrayLists and Generics8分鐘
Project: Module 3 Programming Assignment Walkthrough8分鐘
Reading4 個閱讀材料
By the end of this week you will be able to...10分鐘
Support: Understanding Features and Markers30分鐘
Programming Assignment Instructions
Congratulations and quiz answers10分鐘
Quiz1 個練習
Programming Assignment Quiz (Do programming assignment FIRST)20分鐘
4
完成時間(小時)
完成時間為 5 小時

Inheritance

Now that you’re in full swing with the project, let’s take a closer look at some concepts that you have already been using in your code. Specifically, the keyword “extends”. What exactly does it mean that your program “extends PApplet”? To answer this question we’ll need to dive into the details of how Java allows for Class Hierarchies through Inheritance and Polymorphism. These fundamental and powerful concepts will serve you well in the future! We’ll use these ideas to allow for displaying markers differently. If you feel you’re already comfortable with Inheritance and Polymorphism, feel free to dive straight into the project (programming assignment) for this week. As you work with the project, feel free to have some fun and introduce new levels of class hierarchies for improved functionality. ...
Reading
25 個視頻 (總計 97 分鐘), 3 個閱讀材料, 1 個測驗
Video25 個視頻
Project: Module 4 Programming Assignment Overview1分鐘
Core: Why use Inheritance?5分鐘
Core: Extends5分鐘
In the Real World: Inheritance 152
Core: Reference vs. Object Type3分鐘
When I struggled: the "Is a" relationship40
Concept Challenge: References and Objects9分鐘
Core: Visibility Modifiers4分鐘
When I Struggled: Inheritance45
Core: Object Creation in Java3分鐘
Core: Compiler Rules for Class Construction4分鐘
Core: Variable Initialization in a Class Hierarchy4分鐘
Concept Challenge: Inheritance Constructors 14分鐘
Concept Challenge: Inheritance Constructors 23分鐘
Core: Method Overriding5分鐘
Core: Introduction to Polymorphism2分鐘
When I struggled: Polymorphism56
Core: Rules to Follow for Polymorphism4分鐘
Core: Casting Objects3分鐘
Concept Challenge: Polymorphism Part 16分鐘
Concept Challenge: Polymorphism Part 26分鐘
Core: Abstract Classes and Interfaces5分鐘
In the Real World: Inheritance 21分鐘
Project: Module 4 Programming Assignment Walkthrough7分鐘
Reading3 個閱讀材料
By the end of this week, you will be able to...5分鐘
Programming Assignment Instructions
Congratulations and Quiz Answers10分鐘
Quiz1 個練習
Programming Assignment Quiz (Do programming assignment FIRST)15分鐘
4.7
810 個審閱Chevron Right
職業方向

34%

完成這些課程後已開始新的職業生涯
工作福利

32%

通過此課程獲得實實在在的工作福利
職業晉升

11%

加薪或升職

熱門審閱

創建者 DBOct 13th 2017

Great into to Java, instructors have clearly put thought in to the format with the choose your own learning style videos, and additional coverage where it may be needed. These have been very helpful.

創建者 LROct 14th 2015

I loved this course! The course videos and the projects sharpened my idea about some of the toughest concepts of Java and OOP. I recommend this course to anyone interested in learning OOP in Java. ☺

講師

Avatar

Mia Minnes

Assistant Teaching Professor
Computer Science and Engineering
Avatar

Leo Porter

Assistant Teaching Professor
Computer Science and Engineering
Avatar

Christine Alvarado

Associate Teaching Professor
Computer Science and Engineering

關於 加州大学圣地亚哥分校

UC San Diego is an academic powerhouse and economic engine, recognized as one of the top 10 public universities by U.S. News and World Report. Innovation is central to who we are and what we do. Here, students learn that knowledge isn't just acquired in the classroom—life is their laboratory....

關於 面向对象 Java 程序设计 專項課程

This Specialization is for aspiring software developers with some programming experience in at least one other programming language (e.g., Python, C, JavaScript, etc.) who want to be able to solve more complex problems through objected-oriented design with Java. In addition to learning Java, you will gain experience with two Java development environments (BlueJ and Eclipse), learn how to program with graphical user interfaces, and learn how to design programs capable of managing large amounts of data. These software engineering skills are broadly applicable across wide array of industries....
面向对象 Java 程序设计

常見問題

  • 注册以便获得证书后,您将有权访问所有视频、测验和编程作业(如果适用)。只有在您的班次开课之后,才可以提交和审阅同学互评作业。如果您选择在不购买的情况下浏览课程,可能无法访问某些作业。

  • 您注册课程后,将有权访问专项课程中的所有课程,并且会在完成课程后获得证书。您的电子课程证书将添加到您的成就页中,您可以通过该页打印您的课程证书或将其添加到您的领英档案中。如果您只想阅读和查看课程内容,可以免费旁听课程。

  • This course is meant for learners with a bit of programming background, preferably in Java, who are looking to expand their Software Engineering abilities. Specifically, learners should be already comfortable with loops ("for", "while"), conditionals ("if", "else"), and both calling and authoring methods (functions).

    If you're not sure, that's okay! We have a practice quiz right at the start of the course which will help steer you in the right direction.

還有其他問題嗎?請訪問 學生幫助中心