OO Programming in C# Computing Resources. COMP104-11S Teaching Staff. COMP104-11S Textbooks
|
|
- Priscilla Neal
- 6 years ago
- Views:
Transcription
1 Computing Resources Official Lab: Computing Laboratory 5 (R G.12) Lecture 1 OO Programming in C# Robi Malik Microsoft Visual Studio 2008 is installed on the Windows computers in this lab. DEPARTMENT OF COMPUTER SCIENCE TARI ROROHIKO THE UNIVERSITY OF WAIKATO TE WHARE WANANGA O WAIKATO COMP104-11S Lecture 1 4 COMP104-11S Teaching Staff Robi Malik Room G 2.03 robi@cs.waikato.ac.nz Tim Elphick Room R G.13 telphick@cs.waikato.ac.nz COMP104-11S Textbooks Douglas Bell, Mike Parr, C# for Students, Addison Wesley, Revised Edition, Joel Murach, Murach s C# Mike Murach & Associates, Inc., THE UNIVERSITY OF WAIKATO TE WHARE WANANGA O WAIKATO COMP104-11S Lecture 1 2 THE UNIVERSITY OF WAIKATO TE WHARE WANANGA O WAIKATO COMP104-11S Lecture 1 5 COMP104-11S Timetable Lectures: Monday 12:00 14:00 K G.11 Wednesday 12:00 14:00 K G.11 Friday 12:00 14:00 K G.11 Supervised Labs: Weekdays 10:00 11:00 R G.12 COMP104-11S Moodle Course Home Page course/view.php?id=10464 Will contain: Up-to-date Information Lecture Notes and Assignment Handouts Online Quizzes Assignment Submission THE UNIVERSITY OF WAIKATO TE WHARE WANANGA O WAIKATO COMP104-11S Lecture 1 3 THE UNIVERSITY OF WAIKATO TE WHARE WANANGA O WAIKATO COMP104-11S Lecture 1 6 1
2 COMP104-11S Assessment Internal Assessment Assignment 1 16% due Monday 10 January 2011 Assignment 2 16% due Monday 17 January 2011 Assignment 3 16% due Monday 24 January 2011 Test 16% held Friday 28 January 2011 Assignment 4 32% due Monday 14 February Online Quizzes 4% due Wednesdays Final Examination (35% minimum) Ratio 2:1 or 1:2 (whichever works in your favour) THE UNIVERSITY OF WAIKATO TE WHARE WANANGA O WAIKATO COMP104-11S Lecture 1 7 C# Methods Scope Return type Method name private void button1_click (object sender, System.EventArgs e) Parameter list Body Methods can be called automatically in response to events directly by our program code The body is executed line by line THE UNIVERSITY OF WAIKATO TE WHARE WANANGA O WAIKATO COMP104-11S Lecture 1 10 COMP104S Overview Object Oriented Programming with C# Graphical User Interfaces Object and Class Design Software Development Two Kinds of Variables Local Variables Declared in method body Lose their value when method exits. Instance Variables Declared in class body Keep their value across method calls Flagged with underscore by convention. int count(int n) int i = 0; i += n; class Ball private int x_; private int y_; THE UNIVERSITY OF WAIKATO TE WHARE WANANGA O WAIKATO COMP104-11S Lecture 1 8 THE UNIVERSITY OF WAIKATO TE WHARE WANANGA O WAIKATO COMP104-11S Lecture 1 11 Today: Programming in C# C# programs consist of classes. The main class (typically called Form1) is generated automatically by Visual Studio. Other classes can be created by the programmer. class name Classes contain: body methods instance variables properties Classes: Naming Conventions public class MainWindow nouns upper case camel notation Methods: public void DrawImamge() verbs upper case camel notation in C# Variables: private int innerradius_ nouns (adjectives for Booleans) lower case camel notation instance variables flagged with underscore THE UNIVERSITY OF WAIKATO TE WHARE WANANGA O WAIKATO COMP104-11S Lecture 1 9 THE UNIVERSITY OF WAIKATO TE WHARE WANANGA O WAIKATO COMP104-11S Lecture
3 What is an Object? Observation: Real-world objects always have State Behaviour Definition: An object is a software bundle of variables (state) and related methods (behaviour). THE UNIVERSITY OF WAIKATO TE WHARE WANANGA O WAIKATO COMP104-11S Lecture 1 13 Information Hiding Important: Instance variables are buried within the object. They cannot be accessed directly from outside. They are private. THE UNIVERSITY OF WAIKATO TE WHARE WANANGA O WAIKATO COMP104-11S Lecture 1 16 What is an Object? What is a Message? Methods (behaviour) Instance variables (state) Means of communication between objects. If an object A wants another object B to perform one of its methods, then A sends an appropriate message to B. THE UNIVERSITY OF WAIKATO TE WHARE WANANGA O WAIKATO COMP104-11S Lecture 1 14 THE UNIVERSITY OF WAIKATO TE WHARE WANANGA O WAIKATO COMP104-11S Lecture 1 17 Example: Bicycle Object Example: Sending a Message gears 10 mph gears (lowergear) brake 90 rpm cadence 5 th gear Me My bicycle THE UNIVERSITY OF WAIKATO TE WHARE WANANGA O WAIKATO COMP104-11S Lecture 1 15 THE UNIVERSITY OF WAIKATO TE WHARE WANANGA O WAIKATO COMP104-11S Lecture
4 What is a Class? Superclass and Subclass Definition: A class is a blueprint, or prototype, that defines the variables and the methods common to all objects of a certain kind. Bicycle Mountain Bike Superclass Subclass Inherits state and behaviour from superclass. May add new state and behaviour. May also override inherited behaviour. THE UNIVERSITY OF WAIKATO TE WHARE WANANGA O WAIKATO COMP104-11S Lecture 1 19 THE UNIVERSITY OF WAIKATO TE WHARE WANANGA O WAIKATO COMP104-11S Lecture 1 22 Class and Instance Where are the Objects? Bicycle gears speed_ gears 10 mph brake brake cadence Class cadence My bicycle Instance THE UNIVERSITY OF WAIKATO TE WHARE WANANGA O WAIKATO COMP104-11S Lecture 1 20 THE UNIVERSITY OF WAIKATO TE WHARE WANANGA O WAIKATO COMP104-11S Lecture 1 23 What is Inheritance? The Ball Class Bicycle A ball is a round object that moves. Responsibilities: Movement within a box Rendering Mountain Bike Racing Bike Tandem Bike THE UNIVERSITY OF WAIKATO TE WHARE WANANGA O WAIKATO COMP104-11S Lecture 1 21 THE UNIVERSITY OF WAIKATO TE WHARE WANANGA O WAIKATO COMP104-11S Lecture
5 Class Diagram for Ball Ball position_ speed_ diameter_ Move() Draw() Class name State / Instance Variables / Data Members Behaviour / Responsibilities / Methods Structure of a Class public class Ball // Instance Variables // Public Methods // Properties // Private Methods Class Name Upper case by convention. THE UNIVERSITY OF WAIKATO TE WHARE WANANGA O WAIKATO COMP104-11S Lecture 1 25 THE UNIVERSITY OF WAIKATO TE WHARE WANANGA O WAIKATO COMP104-11S Lecture 1 28 Class Diagram for BallWorld Instance Variables BallWorld uses Ball position_ speed_ diameter_ Move() Draw() Instance Variables describe the state of an object Also called Data Members. Every object of the class has its own copy of the instance variables. Every object can have different values for its instance variables. THE UNIVERSITY OF WAIKATO TE WHARE WANANGA O WAIKATO COMP104-11S Lecture 1 26 THE UNIVERSITY OF WAIKATO TE WHARE WANANGA O WAIKATO COMP104-11S Lecture 1 29 Composition The simplest way of reusing code! Just place an object reference you want to use inside a new class. Best way of expressing has-a relationships. THE UNIVERSITY OF WAIKATO TE WHARE WANANGA O WAIKATO COMP104-11S Lecture 1 27 Declaring Instance Variables //##################### //# Instance Variables private Point pos_; private Point speed_; private int diameter_; Scope Instance variables should be private so they cannot be accessed from outside of the class. Type Name Flagged with underscore by convention. THE UNIVERSITY OF WAIKATO TE WHARE WANANGA O WAIKATO COMP104-11S Lecture
6 Methods Methods describe the behaviour of objects. Public methods can be called by users of the class. They describe the interface of the class. Some methods may be private to represent auxiliary behaviour. Private methods can only be called by other methods of the same class. Constructors are a special type of method called to create objects of the class. THE UNIVERSITY OF WAIKATO TE WHARE WANANGA O WAIKATO COMP104-11S Lecture 1 31 Another Class A list is an ordered collection of objects. [0] [1] [2] [3] Lists are parameterised by generic type: List<Ball> a list of balls List<float> a list of numbers List<List<int>> a list of lists THE UNIVERSITY OF WAIKATO TE WHARE WANANGA O WAIKATO COMP104-11S Lecture 1 34 Scope Writing a Public Method Return Type Name Upper case by convention. public void Draw(Graphics graphics) Brush brush = new SolidBrush(Color.Red); graphics.fillellipse (brush, pos_.x, pos_.y, diameter_, diameter_); THE UNIVERSITY OF WAIKATO TE WHARE WANANGA O WAIKATO COMP104-11S Lecture 1 32 Some List Code List<int> list = new List<int>(); list.add(1); list.add(0); list.add(4); int size = list.count; foreach (int i in list) MessageBox.Show(i); int secondelement = list[1]; list.removeat(1); THE UNIVERSITY OF WAIKATO TE WHARE WANANGA O WAIKATO COMP104-11S Lecture 1 35 Scope Writing a Constructor Omit Return Type Class Name public Ball (int x, int y, int dx, int dy, int radius) pos_ = new Point(x, y); speed_ = new Point(dx, dy); diameter_ Matching = call: 2 * radius; Ball ball = new Ball(20, 25, 2, 2, 10); THE UNIVERSITY OF WAIKATO TE WHARE WANANGA O WAIKATO COMP104-11S Lecture 1 33 Reading C# for Students Chapter 10: Writing Classes pp Murach s C# 2008 Chapter 12: How to Create and Use Classes pp THE UNIVERSITY OF WAIKATO TE WHARE WANANGA O WAIKATO COMP104-11S Lecture
UCLA PIC 20A Java Programming
UCLA PIC 20A Java Programming Instructor: Ivo Dinov, Asst. Prof. In Statistics, Neurology and Program in Computing Teaching Assistant: Yon Seo Kim, PIC University of California, Los Angeles, Summer 2002
More informationJava Object Oriented Design. CSC207 Fall 2014
Java Object Oriented Design CSC207 Fall 2014 Design Problem Design an application where the user can draw different shapes Lines Circles Rectangles Just high level design, don t write any detailed code
More informationJava OOP (SE Tutorials: Learning the Java Language Trail : Object-Oriented Programming Concepts Lesson )
Java OOP (SE Tutorials: Learning the Java Language Trail : Object-Oriented Programming Concepts Lesson ) Dongwon Jeong djeong@kunsan.ac.kr; http://ist.kunsan.ac.kr/ Information Sciences and Technology
More informationLecture 02, Fall 2018 Friday September 7
Anatomy of a class Oliver W. Layton CS231: Data Structures and Algorithms Lecture 02, Fall 2018 Friday September 7 Follow-up Python is also cross-platform. What s the advantage of Java? It s true: Python
More informationCPSC Tutorial 4 Visual Studio and C#
CPSC 481 - Tutorial 4 Visual Studio and C# (based on previous tutorials by Alice Thudt, Fateme Rajabiyazdi, David Ledo, Brennan Jones, and Sowmya Somanath) Today Intro to Assignment 2 Visual Studio Intro
More informationEECS 1001 and EECS 1030M, lab 01 conflict
EECS 1001 and EECS 1030M, lab 01 conflict Those students who are taking EECS 1001 and who are enrolled in lab 01 of EECS 1030M should switch to lab 02. If you need my help with switching lab sections,
More informationDesign Patterns. Design Patterns 1. Outline. Design Patterns. Bicycles Simulator 10/26/2011. Commonly recurring patterns of OO design
G52APR Applications Programming Design Patterns 1 Design Patterns What is design patterns? The design patterns are languageindependent strategies for solving common object-oriented design problems. Jiawei
More informationCS100J, Fall 2003 Preparing for Prelim 1: Monday, 29 Sept., 7:30 9:00PM
CS100J, Fall 2003 Preparing for Prelim 1: Monday, 29 Sept., 7:30 9:00PM This handout explains what you have to know for the first prelim. Terms and their meaning Below, we summarize the terms you should
More informationExercise: Singleton 1
Exercise: Singleton 1 In some situations, you may create the only instance of the class. 1 class mysingleton { 2 3 // Will be ready as soon as the class is loaded. 4 private static mysingleton Instance
More informationMaking New instances of Classes
Making New instances of Classes NOTE: revised from previous version of Lecture04 New Operator Classes are user defined datatypes in OOP languages How do we make instances of these new datatypes? Using
More informationProgramming Exercise 14: Inheritance and Polymorphism
Programming Exercise 14: Inheritance and Polymorphism Purpose: Gain experience in extending a base class and overriding some of its methods. Background readings from textbook: Liang, Sections 11.1-11.5.
More informationSubclasses, Superclasses, and Inheritance
Subclasses, Superclasses, and Inheritance To recap what you've seen before, classes can be derived from other classes. The derived class (the class that is derived from another class) is called a subclass.
More informationDay 4. COMP1006/1406 Summer M. Jason Hinek Carleton University
Day 4 COMP1006/1406 Summer 2016 M. Jason Hinek Carleton University today s agenda assignments questions about assignment 2 a quick look back constructors signatures and overloading encapsulation / information
More informationCPSC Tutorial 4
CPSC 481 - Tutorial 4 Visual Studio and C# (based on previous tutorials by Alice Thudt, Fateme Rajabiyazdi, David Ledo, Brennan Jones, Sowmya Somanath, and Kevin Ta) Introduction Contact Info li26@ucalgary.ca
More informationLABORATORY 1 REVISION
UTCN Computer Science Department Software Design 2012/2013 LABORATORY 1 REVISION ================================================================== I. UML Revision This section focuses on reviewing the
More informationCSE 21 Intro to Computing II. Inheritance
CSE 21 Intro to Computing II Inheritance 1 Administrative Business Lab11 (this week) is due on November 27 th extension Extra lab section on Tuesday November 20 th from 3-6pm (SE138) No lab November 20/23
More informationCMSC201 Computer Science I for Majors
CMSC201 Computer Science I for Majors Lecture 25 Classes All materials copyright UMBC and Dr. Katherine Gibson unless otherwise noted Run time Last Class We Covered Run time of different algorithms Selection,
More informationAllenhouse Institute of Technology (UPTU Code : 505) OOT Notes By Hammad Lari for B.Tech CSE V th Sem
UNIT-1 ECS-503 Object Oriented Techniques Part-1: Object-Oriented Programming Concepts What Is an Object? Objects are key to understanding object-oriented technology. Look around right now and you'll find
More informationCS5000: Foundations of Programming. Mingon Kang, PhD Computer Science, Kennesaw State University
CS5000: Foundations of Programming Mingon Kang, PhD Computer Science, Kennesaw State University Inheritance Three main programming mechanisms that constitute object-oriented programming (OOP) Encapsulation
More informationAbstract Classes. Abstract Classes a and Interfaces. Class Shape Hierarchy. Problem AND Requirements. Abstract Classes.
a and Interfaces Class Shape Hierarchy Consider the following class hierarchy Shape Circle Square Problem AND Requirements Suppose that in order to exploit polymorphism, we specify that 2-D objects must
More informationCSE 113 A. Announcements - Lab
CSE 113 A February 21-25, 2011 Announcements - Lab Lab 1, 2, 3, 4; Practice Assignment 1, 2, 3, 4 grades are available in Web-CAT look under Results -> Past Results and if looking for Lab 1, make sure
More informationOO Techniques & UML Class Diagrams
OO Techniques & UML Class Diagrams SE3A04 Tutorial Jason Jaskolka Department of Computing and Software Faculty of Engineering McMaster University Hamilton, Ontario, Canada jaskolj@mcmaster.ca October 17,
More informationLecture 7. Log into Linux New documents posted to course webpage
Lecture 7 Log into Linux New documents posted to course webpage Coding style guideline; part of project grade is following this Homework 4, due on Monday; this is a written assignment Project 1, due next
More informationA foundation for programming. Classes and objects. Overview. Java primitive types. Primitive types Creating your own data types
Classes and objects A foundation for programming any program you might want to write objects functions and modules build even bigger programs and reuse code http://www.flickr.com/photos/vermegrigio/5923415248/
More informationCS Week 15 Page 1
Reading: 1. Deitel & Deitel, Chapters 10 Objectives: 1. Continue discussing Object Oriented Programming 2. Final Exam Review Concepts: 1. More About Polymorphism References: 1. http://www.prenhall.com/deitel/
More informationChapter 3: Inheritance and Polymorphism
Chapter 3: Inheritance and Polymorphism Overview Inheritance is when a child class, or a subclass, inherits, or gets, all the data (properties) and methods from the parent class, or superclass. Just like
More informationReviewing OO Concepts
Reviewing OO Concepts Users want to draw circles onto the display canvas. public class Circle { // more code here SWEN-261 Introduction to Software Engineering Department of Software Engineering Rochester
More informationBuilding custom components IAT351
Building custom components IAT351 Week 1 Lecture 1 9.05.2012 Lyn Bartram lyn@sfu.ca Today Review assignment issues New submission method Object oriented design How to extend Java and how to scope Final
More informationSpring 2003 Instructor: Dr. Shahadat Hossain. Administrative Matters Course Information Introduction to Programming Techniques
1 CPSC2620 Advanced Programming Spring 2003 Instructor: Dr. Shahadat Hossain 2 Today s Agenda Administrative Matters Course Information Introduction to Programming Techniques 3 Course Assessment Lectures:
More informationClasses, subclasses, subtyping
1 CSCE 314: Programming Languages Dr. Flemming Andersen Classes, subclasses, subtyping 2 3 Let me try to explain to you, what to my taste is characteristic for all intelligent thinking. It is, that one
More informationEINDHOVEN UNIVERSITY OF TECHNOLOGY
EINDHOVEN UNIVERSITY OF TECHNOLOGY Department of Mathematics & Computer Science Exam Programming Methods, 2IP15, Wednesday 17 April 2013, 09:00 12:00 TU/e THIS IS THE EXAMINER S COPY WITH (POSSIBLY INCOMPLETE)
More informationData Structure Design II Chris Piech CS106A, Stanford University. Piech, CS106A, Stanford University
Data Structure Design II Chris Piech CS106A, Stanford University Today in lecture We have used many variable types E.g. GRect E.g. String E.g. AudioSample Today we learn how to define our own We use new
More informationCompSci 230 Software Construction
CompSci 230 Software Construction Lecture Slides #3: Introduction to OOD S1 2015 Version 1.1 of 2015-03-12: added return to code on slides 10, 13 Topics: Agenda Software Design (vs. hacking) Object-Oriented
More informationCOURSE OUTLINE. Faculty of Computing, Universiti Teknologi Malaysia
Page : 1 of 5 Lecturer : Dr. Norsham binti Idris Room No. : Software Engineering Department, Telephone No. : 07-5532348/013-7261920 E-mail : norsham@utm.my Course Synopsis : This course presents the concepts
More informationCPS122 Lecture: Detailed Design and Implementation
CPS122 Lecture: Detailed Design and Implementation Objectives: Last revised March 3, 2017 1. To introduce the use of a complete UML class box to document the name, attributes, and methods of a class 2.
More information1/27/2014. OO design approach with examples. UML and project clarifications (2) Project clarifications 1. UML
OO design approach with examples Sharma Chakravarthy Information Technology Laboratory (IT Lab) Computer Science and Engineering Department The University of Texas at Arlington, Arlington, TX 76019 Email:
More informationConcurrency in Object Oriented Programs 1. Object-Oriented Software Development COMP4001 CSE UNSW Sydney Lecturer: John Potter
Concurrency in Object Oriented Programs 1 Object-Oriented Software Development COMP4001 CSE UNSW Sydney Lecturer: John Potter Outline Concurrency: the Future of Computing Java Concurrency Thread Safety
More informationCLASSES AND OBJECTS. Fundamentals of Computer Science I
CLASSES AND OBJECTS Fundamentals of Computer Science I Outline Primitive types Creating your own data types Classes Objects Instance variables Instance methods Constructors Arrays of objects A Foundation
More informationCOMP200 - Object Oriented Programming: Test One Duration - 60 minutes
COMP200 - Object Oriented Programming: Test One Duration - 60 minutes Study the following class and answer the questions that follow: package shapes3d; public class Circular3DShape { private double radius;
More informationMechEng SE3 Lecture 7 Domain Modelling
MechEng SE3 Lecture 7 Domain Modelling Simon Gay (slides by Phil Gray) 17 February 2010 1 This week s supplementary reading Zero Balances and Zero Responsibility Michael Bolton http://www.developsense.com/essays/zero.html
More informationChapter 6 Introduction to Defining Classes
Introduction to Defining Classes Fundamentals of Java: AP Computer Science Essentials, 4th Edition 1 Objectives Design and implement a simple class from user requirements. Organize a program in terms of
More informationS T R U C T U R A L M O D E L I N G ( M O D E L I N G A S Y S T E M ' S L O G I C A L S T R U C T U R E U S I N G C L A S S E S A N D C L A S S D I A
S T R U C T U R A L M O D E L I N G ( M O D E L I N G A S Y S T E M ' S L O G I C A L S T R U C T U R E U S I N G C L A S S E S A N D C L A S S D I A G R A M S ) WHAT IS CLASS DIAGRAM? A class diagram
More informationObject Orientated Analysis and Design. Benjamin Kenwright
Notation Part 2 Object Orientated Analysis and Design Benjamin Kenwright Outline Review What do we mean by Notation and UML? Types of UML View Continue UML Diagram Types Conclusion and Discussion Summary
More informationCE221 Programming in C++ Part 1 Introduction
CE221 Programming in C++ Part 1 Introduction 06/10/2017 CE221 Part 1 1 Module Schedule There are two lectures (Monday 13.00-13.50 and Tuesday 11.00-11.50) each week in the autumn term, and a 2-hour lab
More informationPrinciples of Object Oriented Programming. Lecture 4
Principles of Object Oriented Programming Lecture 4 Object-Oriented Programming There are several concepts underlying OOP: Abstract Types (Classes) Encapsulation (or Information Hiding) Polymorphism Inheritance
More informationReviewing OO Concepts
Reviewing OO Concepts Users want to draw circles onto the display canvas. public class Circle { // more code here SWEN-261 Introduc2on to So3ware Engineering Department of So3ware Engineering Rochester
More informationAdministrivia. IBM Info Session Date: Wed,, Jan 13 Time: 5:30 7 pm Location: Wesbrook 100
Department of Computer Science Undergraduate Events Events this week Drop-In Resume Edition Date: Mon. Jan 11 Time: 11 am 2 pm Location: Rm 255, ICICS/CS Industry Panel Speakers: Managers from IBM, Microsoft,
More informationLecture 36: Cloning. Last time: Today: 1. Object 2. Polymorphism and abstract methods 3. Upcasting / downcasting
Lecture 36: Cloning Last time: 1. Object 2. Polymorphism and abstract methods 3. Upcasting / downcasting Today: 1. Project #7 assigned 2. equals reconsidered 3. Copying and cloning 4. Composition 11/27/2006
More informationITT Technical Institute. SD1420 Introduction to Java Programming Onsite and Online Course SYLLABUS
ITT Technical Institute SD1420 Onsite and Online Course SYLLABUS Credit hours: 4.5 Contact/Instructional hours: 56 (34 Theory Hours, 22 Lab Hours Prerequisite(s and/or Corequisite(s: Prerequisite: PT1420
More informationCLASSES AND OBJECTS. Fundamentals of Computer Science I
CLASSES AND OBJECTS Fundamentals of Computer Science I Outline Primitive types Creating your own data types Classes Objects Instance variables Instance methods Constructors Arrays of objects A Foundation
More informationZhifu Pei CSCI5448 Spring 2011 Prof. Kenneth M. Anderson
Zhifu Pei CSCI5448 Spring 2011 Prof. Kenneth M. Anderson Introduction History, Characteristics of Java language Java Language Basics Data types, Variables, Operators and Expressions Anatomy of a Java Program
More informationLast lecture. Lecture 9. in a nutshell. in a nutshell 2. Example of encapsulation. Example of encapsulation. Class test. Procedural Programming
1 Lecture 9 Last lecture Class test Has been marked Collect your marks at your next seminar Seminars There are seminars this week to go through the class test Meet in the classroom indicated on the timetable
More informationYou must pass the final exam to pass the course.
Computer Science Technology Department Houston Community College System Department Website: http://csci.hccs.cc.tx.us CRN: 46876 978-1-4239-0146-4 1-4239-0146-0 Semester: Fall 2010 Campus and Room: Stafford
More informationProject 1 Computer Science 2334 Spring 2016 This project is individual work. Each student must complete this assignment independently.
Project 1 Computer Science 2334 Spring 2016 This project is individual work. Each student must complete this assignment independently. User Request: Create a simple movie data system. Milestones: 1. Use
More informationITI Introduction to Computing II
ITI 1121. Introduction to Computing II Marcel Turcotte School of Electrical Engineering and Computer Science Inheritance Introduction Generalization/specialization Version of January 20, 2014 Abstract
More informationObject-Oriented Programming Paradigm
Object-Oriented Programming Paradigm Sample Courseware Object-Oriented Programming Paradigm Object-oriented programming approach allows programmers to write computer programs by representing elements of
More informationTwin A Design Pattern for Modeling Multiple Inheritance
Twin A Design Pattern for Modeling Multiple Inheritance Hanspeter Mössenböck University of Linz, Institute of Practical Computer Science, A-4040 Linz moessenboeck@ssw.uni-linz.ac.at Abstract. We introduce
More informationObject-Oriented Programming. Objects. Objects. Objects
References: Beginning Java by Jacquie Barker; Designing Object-Oriented Software by Rebecca Wirfs- Brock;Object-oriented Analysis & Design by Grady Booch; Sara Stoecklin Object Oriented Programming defined
More information2. COURSE DESIGNATION: 3. COURSE DESCRIPTIONS:
College of San Mateo Official Course Outline 1. COURSE ID: CIS 278 TITLE: (CS1) Programming Methods: C++ C-ID: COMP 122 Units: 4.0 units Hours/Semester: 48.0-54.0 Lecture hours; 48.0-54.0 Lab hours; and
More informationReview sheet for Final Exam (List of objectives for this course)
Review sheet for Final Exam (List of objectives for this course) Please be sure to see other review sheets for this semester Please be sure to review tests from this semester Week 1 Introduction Chapter
More informationBIT 115: Introduction To Programming LECTURE 3. Instructor: Craig Duckett
BIT 115: Introduction To Programming LECTURE 3 Instructor: Craig Duckett cduckett@cascadia.edu Lecture 3 Announcements By now everyone should be up and running with Java, jgrasp, and the Becker Robots
More informationCS 110 Practice Final Exam originally from Winter, Instructions: closed books, closed notes, open minds, 3 hour time limit.
Name CS 110 Practice Final Exam originally from Winter, 2003 Instructions: closed books, closed notes, open minds, 3 hour time limit. There are 4 sections for a total of 49 points. Part I: Basic Concepts,
More informationCurriculum Map Grade(s): Subject: AP Computer Science
Curriculum Map Grade(s): 11-12 Subject: AP Computer Science (Semester 1 - Weeks 1-18) Unit / Weeks Content Skills Assessments Standards Lesson 1 - Background Chapter 1 of Textbook (Weeks 1-3) - 1.1 History
More informationInheritance, part 2: Subclassing. COMP 401, Spring 2015 Lecture 8 2/3/2015
Inheritance, part 2: Subclassing COMP 401, Spring 2015 Lecture 8 2/3/2015 Motivating Example lec8.ex1.v1 Suppose we re writing a university management system. Interfaces: Person get first and last name
More informationLesson 10A OOP Fundamentals. By John B. Owen All rights reserved 2011, revised 2014
Lesson 10A OOP Fundamentals By John B. Owen All rights reserved 2011, revised 2014 Table of Contents Objectives Definition Pointers vs containers Object vs primitives Constructors Methods Object class
More informationITI Introduction to Computing II
ITI 1121. Introduction to Computing II Marcel Turcotte School of Electrical Engineering and Computer Science Inheritance Introduction Generalization/specialization Version of January 21, 2013 Abstract
More informationBlock I Unit 2. Basic Constructs in Java. AOU Beirut Computer Science M301 Block I, unit 2 1
Block I Unit 2 Basic Constructs in Java M301 Block I, unit 2 1 Developing a Simple Java Program Objectives: Create a simple object using a constructor. Create and display a window frame. Paint a message
More informationObject Fundamentals. Kenneth M. Anderson University of Colorado, Boulder CSCI 4448/6448 Lecture 2 08/30/2007
Object Fundamentals Kenneth M. Anderson University of Colorado, Boulder CSCI 4448/6448 Lecture 2 08/30/2007 1 Lecture Goals Introduce basic concepts, terminology, and notations for object-oriented analysis,
More informationObject Oriented Software Design
Object Oriented Software Design Introduction to Object Oriented Programming Giuseppe Lipari http://retis.sssup.it/~lipari Scuola Superiore Sant Anna Pisa September 23, 2010 G. Lipari (Scuola Superiore
More informationPART A : MULTIPLE CHOICE Circle the letter of the best answer (1 mark each)
PART A : MULTIPLE CHOICE Circle the letter of the best answer (1 mark each) 1. An example of a narrowing conversion is a) double to long b) long to integer c) float to long d) integer to long 2. The key
More informationCSSE 220 Day 15. Inheritance. Check out DiscountSubclasses from SVN
CSSE 220 Day 15 Inheritance Check out DiscountSubclasses from SVN Discount Subclasses Work in pairs First look at my solution and understand how it works Then draw a UML diagram of it DiscountSubclasses
More informationChapter 2: Java OOP I
Chapter 2: Java OOP I Yang Wang wyang AT njnet.edu.cn Outline OO Concepts Class and Objects Package Field Method Construct and Initialization Access Control OO Concepts Object Oriented Methods Object An
More informationObject-Oriented Programming (OOP) Basics. CSCI 161 Introduction to Programming I
Object-Oriented Programming (OOP) Basics CSCI 161 Introduction to Programming I Overview Chapter 8 in the textbook Building Java Programs, by Reges & Stepp. Review of OOP History and Terms Discussion of
More informationInheritance. Transitivity
Inheritance Classes can be organized in a hierarchical structure based on the concept of inheritance Inheritance The property that instances of a sub-class can access both data and behavior associated
More informationECE 122. Engineering Problem Solving with Java
ECE 122 Engineering Problem Solving with Java Lecture 17 Inheritance Overview Problem: Can we create bigger classes from smaller ones without having to repeat information? Subclasses: a class inherits
More informationObject-Oriented Programming Concepts
Object-Oriented Programming Concepts Real world objects include things like your car, TV etc. These objects share two characteristics: they all have state and they all have behavior. Software objects are
More informationTEACHING & ASSESSMENT (T & A) PLAN
1 UoN/AA-003/FORM-QTLMS/V2/2017 College of: Engineering & Architecture TEACHING & ASSESSMENT (T & A) PLAN Department/School of: Architecture and Interior Design Semester: SUMMER Academic Year 2016 / 2017
More informationSoftware Paradigms (Lesson 3) Object-Oriented Paradigm (2)
Software Paradigms (Lesson 3) Object-Oriented Paradigm (2) Table of Contents 1 Reusing Classes... 2 1.1 Composition... 2 1.2 Inheritance... 4 1.2.1 Extending Classes... 5 1.2.2 Method Overriding... 7 1.2.3
More informationn HW5 out, due Tuesday October 30 th n Part 1: Questions on material we ll cover today n Part 2: BFS using your graph from HW4
Subtype, Subtyping vs. Subclassing, Liskov Substitution Principle Announcements n HW5 out, due Tuesday October 30 th n Part 1: Questions on material we ll cover today n Part 2: BFS using your graph from
More informationChapter No. 2 Class modeling CO:-Sketch Class,object models using fundamental relationships Contents 2.1 Object and Class Concepts (12M) Objects,
Chapter No. 2 Class modeling CO:-Sketch Class,object models using fundamental relationships Contents 2.1 Object and Class Concepts (12M) Objects, Classes, Class Diagrams Values and Attributes Operations
More informationLecture 6. COMP1006/1406 (the OOP course) Summer M. Jason Hinek Carleton University
Lecture 6 COMP1006/1406 (the OOP course) Summer 2014 M. Jason Hinek Carleton University today s agenda assignments A1,A2,A3 are all marked A4 marking just started A5 is due Friday, A6 is due Monday a quick
More informationCREATED BY: Muhammad Bilal Arslan Ahmad Shaad. JAVA Chapter No 5. Instructor: Muhammad Naveed
CREATED BY: Muhammad Bilal Arslan Ahmad Shaad JAVA Chapter No 5 Instructor: Muhammad Naveed Muhammad Bilal Arslan Ahmad Shaad Chapter No 5 Object Oriented Programming Q: Explain subclass and inheritance?
More informationINHERITANCE AND EXTENDING CLASSES
INHERITANCE AND EXTENDING CLASSES Java programmers often take advantage of a feature of object-oriented programming called inheritance, which allows programmers to make one class an extension of another
More informationOne of these "compartments" is more correctly referred to as an element of the array
An array is a special type of variable in that it can contain many values If a standard variable is like a box, think of an array as being like a box with compartments: One of these "compartments" is more
More informationL. S. Tang Department of Mathematics and Computer Science Western New England College Springfield, MA 01119
SOME EFFECTIVE OOP EXAMPLES L. S. Tang Department of Mathematics and Computer Science Western New England College Springfield, MA 01119 1. INTRODUCTION Object-oriented programming has become increasingly
More informationDay 3. COMP 1006/1406A Summer M. Jason Hinek Carleton University
Day 3 COMP 1006/1406A Summer 2016 M. Jason Hinek Carleton University today s agenda assignments 1 was due before class 2 is posted (be sure to read early!) a quick look back testing test cases for arrays
More informationCS112 Lecture: Defining Classes. 1. To describe the process of defining an instantiable class
CS112 Lecture: Defining Classes Last revised 2/3/06 Objectives: 1. To describe the process of defining an instantiable class Materials: 1. BlueJ SavingsAccount example project 2. Handout of code for SavingsAccount
More information2D1358 Object Oriented Program Construction in C++ Exercises & Labs. Course Registration / Accounts. Course Literature
2D1358 Object Oriented Program Construction in C++ Exercises & Labs Lecturer: Frank Hoffmann hoffmann@nada.kth.se Assistents: Danica Kragic danik @nada.kth.se Anders Orebäck oreback @nada.kth.se Peter
More informationObject-Oriented Design (OOD) and C++
Chapter 2 Object-Oriented Design (OOD) and C++ At a Glance Instructor s Manual Table of Contents Chapter Overview Chapter Objectives Instructor Notes Quick Quizzes Discussion Questions Projects to Assign
More informationCOURSE SYLLABUS FOR. COMP-297 Web Page Design: Adobe Dreamweaver
Coffeyville Community College COURSE SYLLABUS FOR COMP-297 Web Page Design: Adobe Dreamweaver Mrs. Darla Thornburg Spring 2018 Page 1 of 8 COURSE NUMBER: COURSE TITLE: CREDIT HOURS: INSTRUCTOR: OFFICE
More informationChapter 14 Abstract Classes and Interfaces
Chapter 14 Abstract Classes and Interfaces 1 What is abstract class? Abstract class is just like other class, but it marks with abstract keyword. In abstract class, methods that we want to be overridden
More informationOBJECT ORIENTED PROGRAMMING
OBJECT ORIENTED PROGRAMMING (download slides and.py files follow along!) 6.0001 LECTURE 8 6.0001 LECTURE 8 1 OBJECTS Python supports many different kinds of data 1234 3.14159 "Hello" [1, 5, 7, 11, 13]
More informationCS 15 Design Section. Design
Design Introduction to the Section: This may be for advanced students who already know about Procedural Programming. Could be a nice lecture for them as to why we teach OO. This is from a lecture at Georgia
More informationData Analysis 1. Chapter 2.1 V3.1. Napier University Dr Gordon Russell
Data Analysis 1 Chapter 2.1 V3.1 Copyright @ Napier University Dr Gordon Russell Entity Relationship Modelling Overview Database Analysis Life Cycle Components of an Entity Relationship Diagram What is
More informationInheritance and Interfaces
Inheritance and Interfaces what is inheritance? examples & Java API examples inheriting a method overriding a method polymorphism Object tostring interfaces Ex: sorting and Comparable interface Inheritance
More informationStructured Programming
CS 170 Java Programming 1 Objects and Variables A Little More History, Variables and Assignment, Objects, Classes, and Methods Structured Programming Ideas about how programs should be organized Functionally
More informationTutorials. Tutorial every Friday at 11:30 AM in Toldo 204 * discuss the next lab assignment
60-212 subir@cs.uwindsor.ca Phone # 253-3000 Ext. 2999 web site for course www.cs.uwindsor.ca/60-212 Dr. Subir Bandyopadhayay Website has detailed rules and regulations All assignments and labs will be
More informationCS304 Object Oriented Programming Final Term
1. Which of the following is the way to extract common behaviour and attributes from the given classes and make a separate class of those common behaviours and attributes? Generalization (pg 29) Sub-typing
More informationObject-Oriented Programming. Lecture 2 Dr Piotr Cybula
Object-Oriented Programming Lecture 2 Dr Piotr Cybula Encapsulation : data protection code safety and independence better team support with the code separation without «giving
More informationFinal Exam. Programming Assignment 3. University of British Columbia CPSC 111, Intro to Computation Alan J. Hu. Readings
University of British Columbia CPSC 111, Intro to Computation Alan J. Hu Interfaces vs. Inheritance Abstract Classes Inner Classes Readings This Week: No new readings. Consolidate! (Reminder: Readings
More information