Visual Basic Programming: Inheritance and Polymorphism (Coursera)

Offered by LearnQuest,
Visual Basic Programming: Inheritance and Polymorphism (Coursera)

This course is the third course in a series that aims to prepare you for a role working as a programmer. In this course, you will be introduced to the four main concepts in programming: Advanced String Operations and Dates, Modeling Classes, Development of Classes and Collections. Labs will allow the students to apply the material in the lectures in simple computer programs designed to re-enforce the material in the lesson.

Class Deals by MOOC List - Click here and see Coursera's Active Discounts, Deals, and Promo Codes.

Learners will need to have a local machine with any one of the following operating systems; Windows 7 SP1 or higher, macOS 10.1.13 or higher, or almost any version of Linux from the last several years. The learner will either need to download the free community edition of Visual Studio or the open source .NET Core installation.

What You Will Learn

  • Develop computer programs that utilize classes and

objects to solve business and mathematical problems

Course 4 of 4 in the Introduction to Computer Programming with Visual Basic Specialization

Syllabus

WEEK 1
File Input and Output
In this module, we look at how we can persist data to files so that it will exist beyond a single execution of a program. We will look at how we can write data to files in both text and binary formats. We follow-up with ways to read that data back into the state of an executing program.

WEEK 2
Inheritance
In this module, we look at how to implement the is-a relationships we modeled earlier in our UML diagrams through the use of Inheritance. Inheritance provides additional ways to abstract code in taxonomies where base classes share code with specialized versions of the classes. We will add a discussion about exceptions work in Visual Basic now that we can discuss inheritance.

WEEK 3
Polymorphism
In this module, we extend our implementation of the is-a relationships so that our code can work with specializations of a class without knowing the specifics of the specialization. This level of abstraction is known as polymorphism. Polymorphism provides additional ways to abstract code to work on objects in a taxonomy.

WEEK 4
Interfaces
In this module, we continue our deep dive into the implementation of the is-a relationships. In our early work, we developed taxonomies for the purposes of abstraction. Now we want to think about the situation where a class could be in several taxonomies. This level of abstraction is known as an interface in modern programming. Interfaces provide signatures but not implementation so that we can use Polymorphism on objects that fall in multiple taxonomies.

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Object Oriented Programming in Java (Coursera) Coursera
University of California, San Diego

Object Oriented Programming in Java (Coursera)

Welcome to our course on Object Oriented Programming in Java using data visualization. People come to this course with many different goals -- and we are really excited to work with all of you! Some of you want to be professional software developers, others want to improve your programming skills to implement that cool personal project that you’ve been thinking about, while others of you might not yet know why you’re here and are trying to figure out what this course is all about.

Sep 21st 2026
5-12 Weeks
Data Structures and Performance (Coursera) Coursera
University of California, San Diego

Data Structures and Performance (Coursera)

How do Java programs deal with vast quantities of data? Many of the data structures and algorithms that work with introductory toy examples break when applications process real, large data sets. Efficiency is critical, but how do we achieve it, and how do we even measure it? This is an intermediate Java course. We recommend this course to learners who have previous experience in software development or a background in computer science, and in particular, we recommend that you have taken the first course in this specialization (which also requires some previous experience with Java).

Sep 21st 2026
5-12 Weeks
Desenvolvimento Ágil com Padrões de Projeto (Coursera) Coursera
Instituto Tecnológico de Aeronáutica

Desenvolvimento Ágil com Padrões de Projeto (Coursera)

Neste curso, assumimos que você já sabe projetar e desenvolver programas mais complexos em Java, graças às boas práticas e princípios exercitados nos cursos anteriores; mas você talvez não se sinta ainda confortável em lidar com cenários mais complexos, onde é difícil desenvolver software com código de qualidade com flexibilidade suficiente para facilitar a implementação de mudanças repentinas de requisitos.

Sep 21st 2026
4 Weeks
Mastering the Software Engineering Interview (Coursera) Coursera
University of California, San Diego

Mastering the Software Engineering Interview (Coursera)

You’ve hit a major milestone as a computer scientist and are becoming a capable programmer. You now know how to solve problems, write algorithms, and analyze solutions; and you have a wealth of tools (like data structures) at your disposal. You may now be ready for an internship or (possibly) an entry-level software engineering job. But can you land the internship/job? It depends in part on how well you can solve new technical problems and communicate during interviews. How can you get better at this? Practice!

Sep 21st 2026
4 Weeks
The Java Language (Coursera) Coursera
LearnQuest

The Java Language (Coursera)

This is the second course in the Java as a Second Language Specialization. In this course, we'll take a look at Java data types, discuss what primitive data types are, and explain data classes. We'll also explore characters and strings and you'll add a new class in the lab. Next, we'll take a look at Java Control Structures. We'll explain IF statements, Loops, and arrays, and will discuss Switch Statements and the Java Programming Environment.

Sep 28th 2026
3 Weeks
Object-Oriented Python: Inheritance and Encapsulation (Coursera) Coursera
Codio

Object-Oriented Python: Inheritance and Encapsulation (Coursera)

Code and run your first python program in minutes without installing anything! This course is designed for learners with limited coding experience, providing a solid foundation of not just python, but core Computer Science topics that can be transferred to other languages. The modules in this course cover inheritance, encapsulation, polymorphism, and other object-related topics. Completion of the prior 3 courses in this specialization is recommended.

Sep 28th 2026
4 Weeks
Fundamentals of Software Architecture for Big Data (Coursera) Coursera
University of Colorado Boulder

Fundamentals of Software Architecture for Big Data (Coursera)

The course is intended for individuals looking to understand the basics of software engineering as they relate to building large software systems that leverage big data. You will be introduced to software engineering concepts necessary to build and scale large, data intensive, distributed systems. Starting with software engineering best practices and loosely coupled, highly cohesive data microservices, the course takes you through the evolution of a distributed system over time.

Sep 28th 2026
4 Weeks
3D Interaction Design in Virtual Reality (Coursera) Coursera
University of London,Goldsmiths, University of London

3D Interaction Design in Virtual Reality (Coursera)

This course will teach you about one of the most important aspects of VR, how you interact with a VR world. Virtual Reality is completely different from an on screen app or game. You are completely immersed in a VR world, so it doesn't make sense to interact only through buttons or menus. You will get the most out of VR if you can interact with the world just as you would with the real world: with your natural body movements.

Sep 28th 2026
4 Weeks
Introduction to Embedded Systems Software and Development Environments (Coursera) Coursera
University of Colorado Boulder

Introduction to Embedded Systems Software and Development Environments (Coursera)

Welcome to the Introduction to Embedded Systems Software and Development Environments. This course is focused on giving you real world coding experience and hands on project work with ARM based Microcontrollers. You will learn how to implement software configuration management and develop embedded software applications. Course assignments include creating a build system using the GNU Toolchain GCC, using Git version control, and developing software in Linux on a Virtual Machine.

Oct 12th 2026
4 Weeks
Single Page Web Applications with AngularJS (Coursera) Coursera
Johns Hopkins University

Single Page Web Applications with AngularJS (Coursera)

Do you want to write powerful, maintainable, and testable front end applications faster and with less code? Then consider joining this course to gain skills in one of the most popular Single Page Application (SPA) frameworks today, AngularJS. Developed and backed by Google, AngularJS is a very marketable skill to acquire.

Sep 28th 2026
5-12 Weeks