This course is an introduction to the Java programming language and the concepts of object-oriented design. It not only covers the fundamentals of programming in Java, but it also brings in the concepts of object-oriented design. Topics include, but are not limited to, fundamentals of programming in Java, classes and methods, objects and references, overloading, inheritance, polymorphism, abstract classes and interfaces, basic data structures, and GUI applications. Students are expected to apply learned knowledge to address an identified problem found in the real world.

您将获得的技能
您将学习的工具
要了解的详细信息

添加到您的领英档案
7 项作业
了解顶级公司的员工如何掌握热门技能

该课程共有7个模块
This introductory module establishes the foundational knowledge necessary for effective software development by combining core programming concepts with practical design methodologies. You will explore fundamental design principles and object-oriented programming paradigms that form the backbone of modern software architecture, gaining insight into how these concepts create maintainable and scalable code. Through previewing real-world application case studies, you will see how theoretical principles translate into practical solutions across various domains and industries. The module concludes with a comprehensive review of Java programming fundamentals, ensuring all students have the essential syntax, data structures, and programming constructs needed to succeed in subsequent coursework and apply object-oriented design principles effectively in your development projects.
涵盖的内容
1个视频18篇阅读材料1个作业1个应用程序项目1个讨论话题
1个视频• 总计2分钟
- Milestone 1 Video• 2分钟
18篇阅读材料• 总计176分钟
- Course Introduction• 10分钟
- Syllabus - Application Engineering and Development Part 1• 5分钟
- Meet Your Faculty• 3分钟
- Academic Integrity Attestation• 1分钟
- Variables• 15分钟
- Data Types• 10分钟
- Data Types — Alphanumeric• 10分钟
- Data Types — Boolean• 10分钟
- Introduction to Methods• 10分钟
- Types of Methods• 15分钟
- Predefined Methods in Java• 15分钟
- More Examples• 15分钟
- The Process of Methods• 15分钟
- Format String• 10分钟
- Control Flow and Conditions• 10分钟
- if-else• 10分钟
- Multiple ‘else if’ Statements• 10分钟
- Summary• 2分钟
1个作业• 总计10分钟
- Module 1 Assess Your Learning• 10分钟
1个应用程序项目• 总计45分钟
- Understanding Application Design Principles• 45分钟
1个讨论话题• 总计10分钟
- Meet Your Fellow Learners!• 10分钟
This module introduces students to Java programming fundamentals and object-oriented design through hands-on application development. Students will learn to create Java classes and objects, understanding how to define and work with instance variables, methods, and the differences between static and non-static elements. The module emphasizes practical GUI development, teaching students to build user interfaces with JFrames and JPanels while managing data flow between components. By the end of this module, students will have a solid grasp of the object-oriented paradigm and be able to integrate core Java concepts—including data types, control structures, and methods—to create functional Swing applications that demonstrate their understanding of both programming fundamentals and user interface design.
涵盖的内容
15篇阅读材料1个作业1个应用程序项目
15篇阅读材料• 总计170分钟
- OO Programming Concepts• 15分钟
- Constructors• 15分钟
- Default Constructors• 15分钟
- Declaring Object Reference Variables• 15分钟
- Accessing Object’s Members• 15分钟
- Thinking in Objects• 15分钟
- Instance Variables and Methods• 10分钟
- Static Variables, Constants, and Methods• 10分钟
- Introduction to Program Input and Output• 10分钟
- Program Input• 10分钟
- Interned Strings• 10分钟
- Replacing and Splitting Strings• 10分钟
- Matching, Replacing and Splitting by Patterns• 10分钟
- Convert Character and Numbers to Strings• 5分钟
- Summary• 5分钟
1个作业• 总计10分钟
- Module 2 Assess Your Learning• 10分钟
1个应用程序项目• 总计65分钟
- Creating a Java Swing Application• 65分钟
This module represents a crucial transition point in your Java programming journey, where you'll move beyond basic programming concepts to explore more sophisticated data management and visualization techniques. Building upon foundational object-oriented principles, module 3 introduces you to essential tools for organizing, storing, and manipulating collections of data while also teaching you how to model and visualize complex system relationships.
涵盖的内容
18篇阅读材料1个作业2个应用程序项目
18篇阅读材料• 总计240分钟
- UML (Unified Modeling Language) Class Diagram• 10分钟
- Default Value for a Data Field• 10分钟
- Primitive Data Type vs. Class Types• 15分钟
- Garbage Collections• 15分钟
- Instance Variables and Methods• 10分钟
- Static Variables, Constants, and Methods• 10分钟
- Introduction to Arrays• 10分钟
- Creating Arrays• 15分钟
- Arrays in Memory• 15分钟
- Array Elements and Length• 15分钟
- Out-of-Bound Errors• 15分钟
- Initializing Arrays• 15分钟
- Arrays as Method Arguments• 5分钟
- The ArrayList Class• 20分钟
- Array Lists from/to Arrays• 20分钟
- Max and Min in an Array List• 10分钟
- Introduction to Shuffling an Array List• 20分钟
- Summary• 10分钟
1个作业• 总计10分钟
- Module 3 Assess Your Learning• 10分钟
2个应用程序项目• 总计90分钟
- Managing Multiple Objects Part I• 30分钟
- Managing Multiple Objects Part II• 60分钟
Building upon your foundational understanding of classes and objects, this module will take you deeper into the heart of object-oriented programming by exploring how objects interact with methods and how to think systematically about object design. You'll learn about the intricacies of passing objects to methods, understand the crucial differences between primitive and reference type handling, and further explore the principles of encapsulation and abstraction.
涵盖的内容
9篇阅读材料1个作业1个应用程序项目
9篇阅读材料• 总计115分钟
- Passing Object to Methods• 15分钟
- Generic Example of Passing Objects by Methods• 10分钟
- Array of Objects• 15分钟
- Thinking in Objects• 15分钟
- Case Study: The BMI Class• 20分钟
- Processing Primitive Data Types Values as Objects• 15分钟
- The Static valueOf Methods• 10分钟
- The Methods for Parsing Strings into Numbers• 10分钟
- Summary• 5分钟
1个作业• 总计10分钟
- Module 4 Assess Your Learning• 10分钟
1个应用程序项目• 总计35分钟
- Understanding User Interaction Models• 35分钟
In this module we will focus on inheritance, polymorphism, and access modifiers. You'll discover how to create robust class hierarchies using superclasses and subclasses, master the intricacies of constructor chaining, and learn to leverage polymorphism for flexible and maintainable code. Additionally, you'll explore essential Java collections through the ArrayList class and understand how different access modifiers control the visibility and accessibility of your code components. By the end of this module, you'll have a solid foundation in these core OOP concepts that are essential for building sophisticated Java applications.
涵盖的内容
24篇阅读材料1个作业4个应用程序项目
24篇阅读材料• 总计385分钟
- Introduction to Superclasses and Subclasses• 20分钟
- Is Superclass’s Constructor Inherited?• 10分钟
- Using the Keyword super• 10分钟
- Introduction to Inheritance• 10分钟
- Constructor Chaining• 10分钟
- Introduction to Constructor Invocation in Java Inheritance• 60分钟
- The Impact of a Superclass without no-arg Constructor• 20分钟
- Defining a Subclass• 5分钟
- Overriding Methods in the Superclass• 10分钟
- Overriding vs. Overloading• 20分钟
- The Object Class and Its Methods• 20分钟
- The toString() method in Object Class• 20分钟
- Polymorphism• 10分钟
- Casting Objects• 10分钟
- The instanceof Operator• 20分钟
- The equals Method• 10分钟
- The protected Modifier• 15分钟
- Visibility Modifiers• 15分钟
- The final Modifier• 15分钟
- The ArrayList Class• 20分钟
- Array Lists from/to Arrays• 20分钟
- Max and Min in an Array List• 10分钟
- Introduction to Shuffling an Array List• 20分钟
- Summary• 5分钟
1个作业• 总计10分钟
- Module 5 Assess Your Learning• 10分钟
4个应用程序项目• 总计145分钟
- Broker Model• 75分钟
- Understanding Travel Agency Operations• 30分钟
- Understanding Election Processes• 20分钟
- Understanding Election Code• 20分钟
Welcome to Module 6, where you'll dive into abstract classes. In this module, you'll discover how abstract classes serve as blueprints for creating well-structured class hierarchies while enforcing specific implementation requirements in subclasses. Through a deep exploration of abstract methods, instantiation rules, and real-world examples like the Calendar and GregorianCalendar classes, you'll gain a solid understanding of when and how to effectively use abstract classes in your Java applications. This foundational knowledge will enhance your ability to design robust, maintainable code that follows proper object-oriented principles.
涵盖的内容
1个视频4篇阅读材料1个作业2个应用程序项目
1个视频• 总计1分钟
- Milestone 2 Video• 1分钟
4篇阅读材料• 总计35分钟
- Abstract Method in Abstract Class• 10分钟
- Abstract Class as a Type• 10分钟
- Case Study: Abstract Calendar Class and GregorianCalendar Subclass• 10分钟
- Summary• 5分钟
1个作业• 总计10分钟
- Module 6 Assess Your Learning• 10分钟
2个应用程序项目• 总计40分钟
- ProfileWorkarea Example• 16分钟
- Understanding User Profiles and Login Procedures• 24分钟
In this module, you'll step into the role of a software architect designing a comprehensive digital university system that manages students, courses, faculty, and administrative processes. You'll begin by understanding how complex software systems are architected, then apply object-oriented principles to model real-world entities and their relationships using appropriate data structures. As you build this system, you'll learn to delegate responsibilities effectively across components and develop systematic approaches for tracing and debugging complex system execution.
涵盖的内容
2篇阅读材料1个作业2个应用程序项目
2篇阅读材料• 总计12分钟
- Summary• 10分钟
- Congratulations!• 2分钟
1个作业• 总计10分钟
- Module 7 Assess Your Learning• 10分钟
2个应用程序项目• 总计80分钟
- Understanding the University Model• 40分钟
- Understanding the University System Structure• 40分钟
位教师

提供方

提供方

Founded in 1898, Northeastern is a global research university with a distinctive, experience-driven approach to education and discovery. The university is a leader in experiential learning, powered by the world’s most far-reaching cooperative education program. The spirit of collaboration guides a use-inspired research enterprise focused on solving global challenges in health, security, and sustainability.
从 Software Development 浏览更多内容
NNortheastern University
课程
UUniversity of Pennsylvania
课程
NNortheastern University
课程
人们为什么选择 Coursera 来帮助自己实现职业发展

Felipe M.

Jennifer J.

Larry W.

Chaitanya A.
常见问题
To access the course materials, assignments and to earn a Certificate, you will need to purchase the Certificate experience when you enroll in a course. You can try a Free Trial instead, or apply for Financial Aid. The course may offer 'Full Course, No Certificate' instead. This option lets you see all course materials, submit required assessments, and get a final grade. This also means that you will not be able to purchase a Certificate experience.
When you purchase a Certificate you get access to all course materials, including graded assignments. Upon completing the course, your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile.
Yes. In select learning programs, you can apply for financial aid or a scholarship if you can’t afford the enrollment fee. If fin aid or scholarship is available for your learning program selection, you’ll find a link to apply on the description page.
更多问题
提供助学金,


