Java Inheritance. Class ADT (Abstract Data Type) Interface. Classes implement the concept of ADT: Interfaces define interaction contracts: Rui Moreira
|
|
- Melvin Boone
- 5 years ago
- Views:
Transcription
1 Java Iheritace Rui Moreira Class ADT (Abstract Data Type) Classes implemet the cocept of ADT: Provide a coheret represetatio for the declaratio of structured data types ad also the code for maipulatig those data types, i.e., associate i the same cocept (class) the member variables (attributes) ad the member fuctios (methods) Data ad code are o loger separated cocepts, i.e., we may thik o data objects with implicit behaviour ad that may chage themselves we o loger have the separatio betwee data structures ad the fuctios for maipulatig those structures (as with C or Pascal) Rui Moreira 2 Iterface Iterfaces defie iteractio cotracts: Iterfaces are mechaisms/devices that objects may use to iteract (e.g., we iteract with a TV through its public iterface cotrols) A iterface is a collectio of methods which defie the public behaviour exposed by several object (e.g., get, set, move, area, etc.) Iterfaces expose classes/objects behaviour without revealig its iteral implemetatio/details - ecapsulatio A class that implemets a iterface agrees to implemet all the behaviour defied by the iterface methods - cotract Rui Moreira 3 1
2 Iterface Defiitio Iterface q defies the sigature of a set of public methods q method defitio has o body/implemetatio /** AccoutMoeyI: defies methods for maipulatig the Accout moey */ public iterface AccoutMoeyI { public void whidraw(log amout); public void deposit(log amout); public log balace(log amout); /** AccoutRelatioI: defies methods for gettig objects related with Accout */ public iterface AccoutRelatioI { public Cliet getcliet(); public BakMaager getbakmaager(); AccoutMoeyI (from bak) whi deposit( ) balace( ) AccoutRelatioI getcliet( ) getbakmaager( ) Rui Moreira 4 Multiple Iterface Iheritace // A class ca implemet several iterfaces public class AccoutImpl implemets AccoutMoeyI, AccoutRelatioI { // Some attributes here... // The all methods must be implemeted public void whidraw(log amout){ public void deposit(log amout){ public log balace(log amout) ){ public Cliet getcliet() ){ public BakMaager getbakmaager() ){ AccoutMoeyI AccoutRelatioI (from bak) getcliet( ) whi getbakmaager( ) deposit( ) getbalace( ) AccoutImpl (from bak) balace : log accoutnumber : Strig AccoutImpl( ) Rui Moreira 5 Class Iheritace A Java class ca iherit (exted) aother class: Employee ame : Strig = "" /** Super-class Employee: birth : Date = ull salary : float represets a geeric employee */ Employee( ) public class Employee { getname( ) public Strig ame = ; getbirth( ) setbirth( ) private Date birth = ull; getsalary( ) setsalary( ) private float salary; public Employee(Strig, Date b, float s) { /*... */ Maager Salesma subordiates[ ] : Employee zoe : Strig = ull /** Sub-class Maager: Maager( ) Salesma( ) represets a specific employee */ getsubordiates( ) getzoe( ) public class Maager exteds Employee { private Employee subordiates[]; public Maager(Strig, Date b, float s, Employee[] sub) { /*... */ Rui Moreira 6 2
3 Class Iheritace Java allows oly sigle class iheritace, i.e., exted oly 1 class at a time (because of the diamod problem) The subclass iherits oly public attributes ad public methods (i.e., private attributes ad methods of super-class are ot accessible to subclass) Costructors are ot iherited, therefore the subclass must implemet its ow costructors ad explicitly call super-class costructors Rui Moreira 7 Operators: this ad super Java provides 2 operators: q q this: for referecig the class/object itself super: for referecig the super-class/object /** Sub-class Employee: represets a geeric employee */ public class Employee { /* Atributes */ public Strig ame = ; private Date birth = ull; private float salary; public Employee(Strig, Date b, float s) { this.ame = ; // SET OBJECT ATRIBUTE ame to this.birth = b; // SET OBJECT ATRIBUTE birth to b this.salary = s; // SET OBJECT ATRIBUTE salary to s Rui Moreira 8 Operators: this ad super Java provides 2 operators: q this: for referecig the class/object itself q super: for referecig the super-class/object public class Maager { private Employee subordiates[]; public Maager(Strig, Date b, float s, Employee[] sub) { super(, b, s); // EXPLICITLY CALL SUPER-CLASS CONSTRUCTOR this.subordiates = sub; /** Aother costructor */ public Maager(Strig, Date b, float s, Employee[] sub) { super.ame = ; // WE MAY SET PUBLIC ATRIBUTES //super.birth = b; NOT ALLOWED TO SET PRIVATE ATTRIBUTES!!!! super.setbirth(b); // ALTERNATIVELLY USE PUBLIC METHODS super.setsalary(s);// SET PRIVATE ATTRIBUTE VIA PUBLIC METHOD this.subordiates = sub; Rui Moreira 9 3
4 Object Polymorphism A object ca take several shapes // Variable emp is of type Employee Employee emp = ull; // Set referece to a ew Maager emp = ew Maager( Joh, ew Date(2, 08, 1980), 1000, arrayemp); // We CAN ACCESS all attributes/methods of Employee s = emp.getsalary(); // THIS IS ALLOWED!!!! // But CANNOT ACCESS attributes/methods of Maager // because emp is of type Employee arraysubord = emp.getsubordiates(); // THIS IS NOT ALLOWED!!!! // Same referece variable ca poit to a differet object emp = ew Salesma( Mary, ew Date(2, 08, 1980), 1000, Porto ); Rui Moreira 10 Cast Explicit cast: force a object to be of a give type // We CAN ACCESS attributes/methods of Maager // by castig/maskig emp to Maager subordiates = ((Maager)emp).getSubordiates(); // ALLOWED!!!! // We CAN ALSO ACCESS attributes/methods of Salesma // by castig/maskig the object (emp) to Salesma zoe = ((Salesma)emp).getZoe(); // ALSO ALLOWED!!!! NB: we CAN ONLY CAST objects that have/iherit the same base-type (i.e., same super-class). we CANNOT CAST betwee differet types of objects (i.e., which do ot share same super-class)!! Rui Moreira 11 Cast Explicit cast: restore the fucioality of a geeric object // Geeric object ca poit to ay kid of object Object obj = ew Rectagulo(2, 2, 4, 1); if (obj istaceof Rectagulo){ // CAST - Force rec to poit to a object Rectagulo Rectagulo rec = (Rectagulo)obj; // Now we ca access the attributes/methods of Rectagulo iside = rec.isiside(1, 1); Rui Moreira 12 4
5 Object Polymorphism istaceof - check istace type // pritifo(): prits iformatio about a give Employee // istace which depeds o its type public void pritifo(employee e){ if (e istaceof Employee) { e.descriptio(); // Prits employee ifo else if (e istaceof Maager) { e.descriptio(); // Prits maager ifo // Obtai maager subordiates sub = ((Maager)e).getSubordiates(); else if (e istaceof Salesma) { e.descriptio(); // Prits salesma ifo // Obtai Salesma zoe zoe = ((Salesma)e).getZoe(); Maager subordiates[ ] : Employee Maager( ) getsubordiates( ) Employee ame : Strig = "" birth : Date = ull salary : float Employee( ) getname( ) getbirth( ) setbirth( ) getsalary( ) setsalary( ) Salesma zoe : Strig = ull Salesma( ) getzoe( ) Rui Moreira 13 Method Polymorphism - Overload Overload methods: q the same method ame ca be used to idetify/implemet differet methods q each of the methods must have differet parameters q each method ca have the same or differet retur values public class PritClass { // Same method ame with differet parameters/argumets public void prit(it i){ System.out.prit( i = +i); public void prit(float f){ System.out.prit( f = +f); public void prit(strig s){ System.out.prit( s = +s); Rui Moreira 14 Method Polymorphism Override Override Methods (redefie behaviour of super-class methods): q the sub-class may add ew methods to the super-class but ca also redefie/override methods of the super-class (chage the behaviour of existig methods) // Method descriptio() is provided by Employee // ad overridde by Maager ad Salesma to add specific ifo public class Maager { public Strig descriptio(){ // Add additioal Maager ifo retur super.descriptio()+ : +this.subordiates.legth; public class Salesma { public Strig descriptio(){ // Add additioal Salesma ifo retur super.descriptio()+ : +this.zoe; Rui Moreira 15 5
6 Exercises Implemet the followig class diagram (NB: you may chage the classes already defied i previous examples/slides, e.g., Rectagulo, Triagulo, Circulo) Poto x : it = 0 y : it = 0 Poto( ) getx( ) gety( ) setx( ) 1..* sety( ) drawpoto( ) exteds Rectagulo upleftpoto : Poto = ull dowrightpoto : Poto = ull Rectagulo( ) getupleftpoto( ) getdowrightpoto( ) setupleftpoto( ) setdowrightpoto( ) isiside( ) area( ) tostrig( ) GeoFigureI getcolor( ) chagecolor( ) tostrig( ) implemets GeoFigure color : it exteds Circulo ceterpoto : Poto = ull diameter : it = 0 getceterpoto( ) getdiameter( ) setceterpoto( ) setdiameter( ) isiside( ) area( ) tostrig( ) exteds Triagulo uppoto : Poto = ull dowpoto : Poto = ull middlepoto : Poto = ull getuppoto( ) getdowpoto( ) getmiddlepoto( ) setuppoto( ) setdowpoto( ) setmiddlepoto( ) isiside( ) area( ) tostrig( ) Rui Moreira 16 6
Java Inheritance. Classes implement the concept of ADT:
Java Inheritance Rui Moreira Class ADT (Abstract Data Type) Classes implement the concept of ADT: n Provide a coherent representation for the declaration of structured data types and also the code for
More informationChapter 10. Defining Classes. Copyright 2015 Pearson Education, Ltd.. All rights reserved.
Chapter 10 Defiig Classes Copyright 2015 Pearso Educatio, Ltd.. All rights reserved. Overview 10.1 Structures 10.2 Classes 10.3 Abstract Data Types 10.4 Itroductio to Iheritace Copyright 2015 Pearso Educatio,
More informationJava Expressions & Flow Control
Java Expressios & Flow Cotrol Rui Moreira Expressio Separators:. [ ] ( ), ; Dot used as decimal separator or to access attributes ad methods double d = 2.6; Poto poto = ew Poto(2, 3); it i = poto.x; it
More informationClasses and Objects. Again: Distance between points within the first quadrant. José Valente de Oliveira 4-1
Classes ad Objects jvo@ualg.pt José Valete de Oliveira 4-1 Agai: Distace betwee poits withi the first quadrat Sample iput Sample output 1 1 3 4 2 jvo@ualg.pt José Valete de Oliveira 4-2 1 The simplest
More informationn We have discussed classes in previous lectures n Here, we discuss design of classes n Library design considerations
Chapter 14 Graph class desig Bjare Stroustrup Abstract We have discussed classes i previous lectures Here, we discuss desig of classes Library desig cosideratios Class hierarchies (object-orieted programmig)
More informationChapter 11. Friends, Overloaded Operators, and Arrays in Classes. Copyright 2014 Pearson Addison-Wesley. All rights reserved.
Chapter 11 Frieds, Overloaded Operators, ad Arrays i Classes Copyright 2014 Pearso Addiso-Wesley. All rights reserved. Overview 11.1 Fried Fuctios 11.2 Overloadig Operators 11.3 Arrays ad Classes 11.4
More informationΤεχνολογία Λογισμικού
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Τεχνολογία Λογισμικού, 7ο/9ο εξάμηνο 2018-2019 Τεχνολογία Λογισμικού Ν.Παπασπύρου, Αν.Καθ. ΣΗΜΜΥ, ickie@softlab.tua,gr
More informationPython Programming: An Introduction to Computer Science
Pytho Programmig: A Itroductio to Computer Sciece Chapter 6 Defiig Fuctios Pytho Programmig, 2/e 1 Objectives To uderstad why programmers divide programs up ito sets of cooperatig fuctios. To be able to
More informationLinked Lists 11/16/18. Preliminaries. Java References. Objects and references. Self references. Linking self-referential nodes
Prelimiaries Liked Lists public class StrageObject { Strig ame; StrageObject other; Arrays are ot always the optimal data structure: A array has fixed size eeds to be copied to expad its capacity Addig
More informationExceptions. Your computer takes exception. The Exception Class. Causes of Exceptions
Your computer takes exceptio s s are errors i the logic of a program (ru-time errors). Examples: i thread mai java.io.filenotfoud: studet.txt (The system caot fid the file specified.) i thread mai java.lag.nullpoiter:
More informationWhat Is Object-Orientation?
Iformatio Systems Cocepts What Is Object-Orietatio? Roma Kotchakov Birkbeck, Uiversity of Lodo Based o Chapter 4 of Beett, McRobb ad Farmer: Object Orieted Systems Aalysis ad Desig Usig UML, (4th Editio),
More informationWYSE Academic Challenge Sectional Computer Science 2005 SOLUTION SET
WYSE Academic Challege Sectioal Computer Sciece 2005 SOLUTION SET 1. Correct aswer: a. Hz = cycle / secod. CPI = 2, therefore, CPI*I = 2 * 28 X 10 8 istructios = 56 X 10 8 cycles. The clock rate is 56
More informationTopics. Instance object. Instance object. Fundamentals of OT. Object notation. How do objects collaborate? Pearson Education 2007 Appendix (RASD 3/e)
Appedix (RASD 3/e) MACIASZEK, L.A. (2007): Requiremets Aalysis ad System Desig, 3 rd ed. Addiso Wesley, Harlow Eglad ISBN 978-0-321-44036-5 Appedix Fudametals of Object Techology Pearso Educatio Limited
More informationJava Classes & Primitive Types
Java Classes & Primitive Types Rui Moreira Classes Ponto (from figgeom) x : int = 0 y : int = 0 n Attributes q Characteristics/properties of classes q Primitive types (e.g., char, byte, int, float, etc.)
More informationJava Classes & Primitive Types
Java Classes & Primitive Types Rui Moreira Classes Ponto (from figgeom) x : int = 0 y : int = 0 n Attributes q Characteristics/properties of classes q Primitive types (e.g., char, byte, int, float, etc.)
More informationBasic allocator mechanisms The course that gives CMU its Zip! Memory Management II: Dynamic Storage Allocation Mar 6, 2000.
5-23 The course that gives CM its Zip Memory Maagemet II: Dyamic Storage Allocatio Mar 6, 2000 Topics Segregated lists Buddy system Garbage collectio Mark ad Sweep Copyig eferece coutig Basic allocator
More informationChapter 9. Pointers and Dynamic Arrays. Copyright 2015 Pearson Education, Ltd.. All rights reserved.
Chapter 9 Poiters ad Dyamic Arrays Copyright 2015 Pearso Educatio, Ltd.. All rights reserved. Overview 9.1 Poiters 9.2 Dyamic Arrays Copyright 2015 Pearso Educatio, Ltd.. All rights reserved. Slide 9-3
More informationExercise Set: Implementing an Object-Oriented Design
Exercise Set: Implemetig a Object-Orieted Desig I this exercise set, we have marked questios we thik are harder tha others with a [ ]. We have also marked questios for which solutios are provided at the
More informationOracle Server. What s New in this Release? Release Notes
Oracle email Server Release Notes Release 5.2 for Widows NT May 2001 Part No. A90426-01 These release otes accompay Oracle email Server Release 5.2 for Widows NT. They cotai the followig topics: What s
More informationThreads and Concurrency in Java: Part 1
Cocurrecy Threads ad Cocurrecy i Java: Part 1 What every computer egieer eeds to kow about cocurrecy: Cocurrecy is to utraied programmers as matches are to small childre. It is all too easy to get bured.
More informationThreads and Concurrency in Java: Part 1
Threads ad Cocurrecy i Java: Part 1 1 Cocurrecy What every computer egieer eeds to kow about cocurrecy: Cocurrecy is to utraied programmers as matches are to small childre. It is all too easy to get bured.
More informationBaan Finance Financial Statements
Baa Fiace Fiacial Statemets Module Procedure UP041A US Documetiformatio Documet Documet code : UP041A US Documet group : User Documetatio Documet title : Fiacial Statemets Applicatio/Package : Baa Fiace
More informationCS211 Fall 2003 Prelim 2 Solutions and Grading Guide
CS11 Fall 003 Prelim Solutios ad Gradig Guide Problem 1: (a) obj = obj1; ILLEGAL because type of referece must always be a supertype of type of object (b) obj3 = obj1; ILLEGAL because type of referece
More informationCMPT 125 Assignment 2 Solutions
CMPT 25 Assigmet 2 Solutios Questio (20 marks total) a) Let s cosider a iteger array of size 0. (0 marks, each part is 2 marks) it a[0]; I. How would you assig a poiter, called pa, to store the address
More informationArchitectural styles for software systems The client-server style
Architectural styles for software systems The cliet-server style Prof. Paolo Ciacarii Software Architecture CdL M Iformatica Uiversità di Bologa Ageda Cliet server style CS two tiers CS three tiers CS
More informationifs considered Harmful
ifs cosidered Harmful Or; how to elimiate 90% of your bugs ad 99% of your techical debt i oe easy step. Jules May JulesMay.co.uk Codebase survey Bugs: all ~2.5 millio lies 5 years developmet 6-25 developers
More informationJava net programming II
Java et programmig II https://docs.oracle.com/javase/tutorial/etworkig/sockets/ Overview The problem Basic backgroud: TCP/IP, ports, Cliet/Server, sockets Commuicatio with sockets java.et (overview) Simple
More informationAnnouncements TREES II. Comparing Data Structures. Binary Search Trees. Red-Black Trees. Red-Black Trees 3/13/18
//8 Aoucemets Prelim is Toight, brig your studet ID :PM EXAM OLH: etids startig aa to dh OLH: etids startig di to ji PHL: etids startig jj to ks (Plus studets who switched from the 7: exam) TREES II Lecture
More informationCompiling and executing managed code
Compilig ad exectig maaged code Sorce Code Compilatio Lagage Compiler Microsoft Itermediate Lagage (MSIL) The first time each method is called Native Code Exectio JIT Compiler Commo Lagage Rtime C# .NET
More informationTerm Project Report. This component works to detect gesture from the patient as a sign of emergency message and send it to the emergency manager.
CS2310 Fial Project Loghao Li Term Project Report Itroductio I this project, I worked o expadig exercise 4. What I focused o is makig the real gesture recogizig sesor ad desig proper gestures ad recogizig
More informationCHAPTER IV: GRAPH THEORY. Section 1: Introduction to Graphs
CHAPTER IV: GRAPH THEORY Sectio : Itroductio to Graphs Sice this class is called Number-Theoretic ad Discrete Structures, it would be a crime to oly focus o umber theory regardless how woderful those topics
More informationPanel for Adobe Premiere Pro CC Partner Solution
Pael for Adobe Premiere Pro CC Itegratio for more efficiecy The makes video editig simple, fast ad coveiet. The itegrated pael gives users immediate access to all medialoopster features iside Adobe Premiere
More informationCode Review Defects. Authors: Mika V. Mäntylä and Casper Lassenius Original version: 4 Sep, 2007 Made available online: 24 April, 2013
Code Review s Authors: Mika V. Mätylä ad Casper Lasseius Origial versio: 4 Sep, 2007 Made available olie: 24 April, 2013 This documet cotais further details of the code review defects preseted i [1]. of
More informationΤεχνολογία Λογισμικού
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Τεχνολογία Λογισμικού, 7ο/9ο εξάμηνο 2018-2019 Τεχνολογία Λογισμικού Ν.Παπασπύρου, Αν.Καθ. ΣΗΜΜΥ, ickie@softlab.tua,gr
More informationGoals of the Lecture UML Implementation Diagrams
Goals of the Lecture UML Implemetatio Diagrams Object-Orieted Aalysis ad Desig - Fall 1998 Preset UML Diagrams useful for implemetatio Provide examples Next Lecture Ð A variety of topics o mappig from
More informationn Web: applets, security, URL, networking n GUI: Abstract Windows Toolkit (AWT) n Authentication: digital signatures, certificates
Advaced System Desig Usig Java Techology Nasreddie Aoumeur E-mail: a@mcs.le.ac.uk Home page: http://www.cs.le.ac.uk/~a80/labs A Brief History Jauary 1996: first official release JDK 1.0 Web: applets, security,
More informationWORKED EXAMPLE 7.1. Producing a Mass Mailing. We want to automate the process of producing mass mailings. A typical letter might look as follows:
Worked Example 7.1 Producig a Mass Mailig 1 WORKED EXAMPLE 7.1 Producig a Mass Mailig We wat to automate the process of producig mass mailigs. A typical letter might look as follows: To: Ms. Sally Smith
More informationLecture 9: Exam I Review
CS 111 (Law): Program Desig I Lecture 9: Exam I Review Robert H. Sloa & Richard Warer Uiversity of Illiois, Chicago September 22, 2016 This Class Discuss midterm topics Go over practice examples Aswer
More informationRequirements Analysis
Iformatio Systems Cocepts Requiremets Aalysis Roma Kotchakov Birkbeck, Uiversity of Lodo Based o Chapter 7 of Beett, McRobb ad Farmer: Object Orieted Systems Aalysis ad Desig Usig UML, (4th Editio), McGraw
More informationCIS 121. Introduction to Trees
CIS 121 Itroductio to Trees 1 Tree ADT Tree defiitio q A tree is a set of odes which may be empty q If ot empty, the there is a distiguished ode r, called root ad zero or more o-empty subtrees T 1, T 2,
More informationRecursion. Computer Science S-111 Harvard University David G. Sullivan, Ph.D. Review: Method Frames
Uit 4, Part 3 Recursio Computer Sciece S-111 Harvard Uiversity David G. Sulliva, Ph.D. Review: Method Frames Whe you make a method call, the Java rutime sets aside a block of memory kow as the frame of
More informationOverview. Chapter 18 Vectors and Arrays. Reminder. vector. Bjarne Stroustrup
Chapter 18 Vectors ad Arrays Bjare Stroustrup Vector revisited How are they implemeted? Poiters ad free store Destructors Iitializatio Copy ad move Arrays Array ad poiter problems Chagig size Templates
More informationThe Magma Database file formats
The Magma Database file formats Adrew Gaylard, Bret Pikey, ad Mart-Mari Breedt Johaesburg, South Africa 15th May 2006 1 Summary Magma is a ope-source object database created by Chris Muller, of Kasas City,
More informationAvid Interplay Bundle
Avid Iterplay Budle Versio 2.5 Cofigurator ReadMe Overview This documet provides a overview of Iterplay Budle v2.5 ad describes how to ru the Iterplay Budle cofiguratio tool. Iterplay Budle v2.5 refers
More informationC++, Visual C++, and Managed C++: What s the Difference?
02 6000 ch01 11/18/03 8:52 AM Page 7 C++, Visual C++, ad Maaged C++: What s the Differece? Differeces Betwee Visual C++ ad C++ C++ is a laguage, ad Visual C++ is a product. The laguage itself was developed
More informationComputers and Scientific Thinking
Computers ad Scietific Thikig David Reed, Creighto Uiversity Chapter 15 JavaScript Strigs 1 Strigs as Objects so far, your iteractive Web pages have maipulated strigs i simple ways use text box to iput
More informationChapter 8. Strings and Vectors. Copyright 2014 Pearson Addison-Wesley. All rights reserved.
Chapter 8 Strigs ad Vectors Overview 8.1 A Array Type for Strigs 8.2 The Stadard strig Class 8.3 Vectors Slide 8-3 8.1 A Array Type for Strigs A Array Type for Strigs C-strigs ca be used to represet strigs
More informationElementary Educational Computer
Chapter 5 Elemetary Educatioal Computer. Geeral structure of the Elemetary Educatioal Computer (EEC) The EEC coforms to the 5 uits structure defied by vo Neuma's model (.) All uits are preseted i a simplified
More informationCS 11 C track: lecture 1
CS 11 C track: lecture 1 Prelimiaries Need a CMS cluster accout http://acctreq.cms.caltech.edu/cgi-bi/request.cgi Need to kow UNIX IMSS tutorial liked from track home page Track home page: http://courses.cms.caltech.edu/courses/cs11/material
More informationBaan Tools User Management
Baa Tools User Maagemet Module Procedure UP008A US Documetiformatio Documet Documet code : UP008A US Documet group : User Documetatio Documet title : User Maagemet Applicatio/Package : Baa Tools Editio
More informationChapter 1. Introduction to Computers and C++ Programming. Copyright 2015 Pearson Education, Ltd.. All rights reserved.
Chapter 1 Itroductio to Computers ad C++ Programmig Copyright 2015 Pearso Educatio, Ltd.. All rights reserved. Overview 1.1 Computer Systems 1.2 Programmig ad Problem Solvig 1.3 Itroductio to C++ 1.4 Testig
More informationInductive Definition to Recursive Function
PDS: CS 11002 Computer Sc & Egg: IIT Kharagpur 1 Iductive Defiitio to Recursive Fuctio PDS: CS 11002 Computer Sc & Egg: IIT Kharagpur 2 Factorial Fuctio Cosider the followig recursive defiitio of the factorial
More informationCustomer Portal Quick Reference User Guide
Customer Portal Quick Referece User Guide Overview This user guide is iteded for FM Approvals customers usig the Approval Iformatio Maagemet (AIM) customer portal to track their active projects. AIM is
More informationOutline n Introduction n Background o Distributed DBMS Architecture
Outlie Itroductio Backgroud o Distributed DBMS Architecture Datalogical Architecture Implemetatio Alteratives Compoet Architecture o Distributed DBMS Architecture o Distributed Desig o Sematic Data Cotrol
More informationCreating Test Harnesses and Starter Applications
03 6000 ch02 11/18/03 8:54 AM Page 27 Creatig Test Haresses ad Starter Applicatios Applicatio Types You Ca Create with Visual C++ Visual C++.NET comes with a package of wizards that geerate startig code
More informationSchema for the DCE Security Registry Server
Schema for the Security egistry Server Versio Date: 0/20/00 For questios or commets cocerig this documet, sed a email ote to dce-ldap@opegroup.org or call Doa Skibbie at 52 838-3896. . Itroductio...3 2.
More informationRecursion. Recursion. Mathematical induction: example. Recursion. The sum of the first n odd numbers is n 2 : Informal proof: Principle:
Recursio Recursio Jordi Cortadella Departmet of Computer Sciece Priciple: Reduce a complex problem ito a simpler istace of the same problem Recursio Itroductio to Programmig Dept. CS, UPC 2 Mathematical
More informationThreads and Concurrency in Java: Part 2
Threads ad Cocurrecy i Java: Part 2 1 Waitig Sychroized methods itroduce oe kid of coordiatio betwee threads. Sometimes we eed a thread to wait util a specific coditio has arise. 2003--09 T. S. Norvell
More informationCSI 3140 WWW Structures, Techniques and Standards. Cascading Style Sheets (CSS)
CSI 3140 WWW Structures, Techiques ad Stadards Cascadig Style Sheets (CSS) Motivatio whtml markup ca be used to represet Sematics: h1 meas that a elemet is a top-level headig Presetatio: h1 elemets look
More informationOnes Assignment Method for Solving Traveling Salesman Problem
Joural of mathematics ad computer sciece 0 (0), 58-65 Oes Assigmet Method for Solvig Travelig Salesma Problem Hadi Basirzadeh Departmet of Mathematics, Shahid Chamra Uiversity, Ahvaz, Ira Article history:
More informationChapter 8. Strings and Vectors. Copyright 2015 Pearson Education, Ltd.. All rights reserved.
Chapter 8 Strigs ad Vectors Copyright 2015 Pearso Educatio, Ltd.. All rights reserved. Overview 8.1 A Array Type for Strigs 8.2 The Stadard strig Class 8.3 Vectors Copyright 2015 Pearso Educatio, Ltd..
More informationGoals of the Lecture Object Constraint Language
Goals of the Lecture Object Costrait Laguage Object-Orieted Aalysis ad Desig - Fall 1998 Preset the Object Costrait Laguage Ð As best as possible, with the limited iformatio available from UML i a Nutshell
More informationTask scenarios Outline. Scenarios in Knowledge Extraction. Proposed Framework for Scenario to Design Diagram Transformation
6-0-0 Kowledge Trasformatio from Task Scearios to View-based Desig Diagrams Nima Dezhkam Kamra Sartipi {dezhka, sartipi}@mcmaster.ca Departmet of Computig ad Software McMaster Uiversity CANADA SEKE 08
More informationtop() Applications of Stacks
CS22 Algorithms ad Data Structures MW :00 am - 2: pm, MSEC 0 Istructor: Xiao Qi Lecture 6: Stacks ad Queues Aoucemets Quiz results Homework 2 is available Due o September 29 th, 2004 www.cs.mt.edu~xqicoursescs22
More informationSharing Collections. Share a Collection via . Share a Collection via Google Classroom. Quick Reference Guide
Quick Referece Guide Share a Collectio via Email Sharig your collectio with others is a great way to collaborate. You ca easily sed a lik to your colleagues, studets, classmates ad frieds. Recipiets do
More informationChapter 4 Remote Procedure Calls and Distributed Transactions
Prof. Dr.-Ig. Stefa Deßloch AG Heterogee Iformatiossysteme Geb. 36, Raum 329 Tel. 0631/205 3275 dessloch@iformatik.ui-kl.de Chapter 4 Remote Procedure Calls ad Distributed Trasactios Outlie Remote Procedure
More informationAbstract Data Types (ADTs) Stacks. The Stack ADT ( 4.2) Stack Interface in Java
Abstract Data Types (ADTs) tacks A abstract data type (ADT) is a abstractio of a data structure A ADT specifies: Data stored Operatios o the data Error coditios associated with operatios Example: ADT modelig
More informationOutline. Research Definition. Motivation. Foundation of Reverse Engineering. Dynamic Analysis and Design Pattern Detection in Java Programs
Dyamic Aalysis ad Desig Patter Detectio i Java Programs Outlie Lei Hu Kamra Sartipi {hul4, sartipi}@mcmasterca Departmet of Computig ad Software McMaster Uiversity Caada Motivatio Research Problem Defiitio
More informationGuide for Online Renewal
guide for olie reewal Guide for Olie Reewal This guide is desiged to assist you i the completio of your aual olie reewal of registratio. 250 Bloor St. East, Suite 1000, Toroto ON M4W 1E6 Phoe: 416-972-9882
More informationBEA WebLogic Server. Programming WebLogic Enterprise JavaBeans
BEA WebLogic Server Programmig WebLogic Eterprise JavaBeas WebLogic Server 6.0 Documet Date March 3, 2001 Copyright Copyright 2001 BEA Systems, Ic. All Rights Reserved. Restricted Rights Leged This software
More informationPython Programming: An Introduction to Computer Science
Pytho Programmig: A Itroductio to Computer Sciece Chapter 1 Computers ad Programs 1 Objectives To uderstad the respective roles of hardware ad software i a computig system. To lear what computer scietists
More information1 Enterprise Modeler
1 Eterprise Modeler Itroductio I BaaERP, a Busiess Cotrol Model ad a Eterprise Structure Model for multi-site cofiguratios are itroduced. Eterprise Structure Model Busiess Cotrol Models Busiess Fuctio
More informationHow do we evaluate algorithms?
F2 Readig referece: chapter 2 + slides Algorithm complexity Big O ad big Ω To calculate ruig time Aalysis of recursive Algorithms Next time: Litterature: slides mostly The first Algorithm desig methods:
More informationAdapter for Mainframe
BEA WebLogic Java Adapter for Maiframe Workflow Processig Guide Release 5.0 Documet Date: Jauary 2002 Copyright Copyright 2002 BEA Systems, Ic. All Rights Reserved. Restricted Rights Leged This software
More information10/23/18. File class in Java. Scanner reminder. Files. Opening a file for reading. Scanner reminder. File Input and Output
File class i Java File Iput ad Output TOPICS File Iput Exceptio Hadlig File Output Programmers refer to iput/output as "I/O". The File class represets files as objects. The class is defied i the java.io
More informationBruce Eckel, Thinking in Patterns with Java, cf. José Valente de Oliveira 10-1
The desig patter Template Method Erich Gamma, Richard Helm, Ralph Johso, Joh Vlissides, Desig Patters Elemets of Reusable Object-Orieted Software, Addiso-Wesley, 1995, AKA GoF Bruce Eckel, Thikig i Patters
More informationCOP4020 Programming Languages. Names, Scopes, and Bindings Prof. Robert van Engelen
COP4020 Programmig Laguages Names, Scopes, ad Bidigs Prof. Robert va Egele Overview Abstractios ad ames Bidig time Object lifetime Object storage maagemet Static allocatio Stack allocatio Heap allocatio
More informationBEA WebLogic Process Integrator
BEA WebLogic Process Itegrator A Compoet of BEA WebLogic Itegratio BEA WebLogic Process Itegrator Studio Olie Help BEA WebLogic Process Itegrator Release 2.0 Documet Editio 2.0 July 2001 Copyright Copyright
More informationBike MS: 2013 Participant Center guide
Bike MS: 2013 Participat Ceter guide bikems.org 1 Why use Olie Fudraisig Tools? Usig olie tools makes fudraisig easier Table of Cotets Participats who use persoal pages raise more moey! Bike MS $883 v.
More informationBike MS: 2014 Participant Center guide
Bike MS: 2014 Participat Ceter guide bikems.org 1 Table of Cotets Why Use Olie Fudraisig Tools... 2 Participat Ceter... 3 Guide to Olie Fudraisig... 3 Edit Persoal Page... 5 Address Book... 7 Email Messages...
More informationAbstract. Chapter 4 Computation. Overview 8/13/18. Bjarne Stroustrup Note:
Chapter 4 Computatio Bjare Stroustrup www.stroustrup.com/programmig Abstract Today, I ll preset the basics of computatio. I particular, we ll discuss expressios, how to iterate over a series of values
More information)XUWKHU-DYD &RPSXWHU/DERUDWRU\ 0LFKDHOPDV &RPSXWHU6FLHQFH7ULSRV3DUW% &RPSXWHU6FLHQFH7ULSRV3DUW*HQHUDO 'LSORPDLQ&RPSXWHU6FLHQFH 7LPRWK\+DUULV
)XUWKHU-DYD &RPSXWHU/DERUDWRU\ &RPSXWHU6FLHQFH7ULSRV3DUW% &RPSXWHU6FLHQFH7ULSRV3DUW*HQHUDO 'LSORPDLQ&RPSXWHU6FLHQFH 7LPRWK\+DUULV 0LFKDHOPDV )XUWKHU-DYD Computer Sciece Tripos Part 1B Computer Sciece
More informationPriority Queues. Binary Heaps
Priority Queues Biary Heaps Priority Queues Priority: some property of a object that allows it to be prioritized with respect to other objects of the same type Mi Priority Queue: homogeeous collectio of
More informationProtected points in ordered trees
Applied Mathematics Letters 008 56 50 www.elsevier.com/locate/aml Protected poits i ordered trees Gi-Sag Cheo a, Louis W. Shapiro b, a Departmet of Mathematics, Sugkyukwa Uiversity, Suwo 440-746, Republic
More informationExact Minimum Lower Bound Algorithm for Traveling Salesman Problem
Exact Miimum Lower Boud Algorithm for Travelig Salesma Problem Mohamed Eleiche GeoTiba Systems mohamed.eleiche@gmail.com Abstract The miimum-travel-cost algorithm is a dyamic programmig algorithm to compute
More informationIntroduction to Sigma Notation
Itroductio to Siga Notatio Steph de Silva //207 What is siga otatio? is the capital Greek letter for the soud s I this case, it s just shorthad for su Siga otatio is what we use whe we have a series of
More informationWeb OS Switch Software
Web OS Switch Software BBI Quick Guide Nortel Networks Part Number: 213164, Revisio A, July 2000 50 Great Oaks Boulevard Sa Jose, Califoria 95119 408-360-5500 Mai 408-360-5501 Fax www.orteletworks.com
More informationCS : Data Structures Michael Schatz. Sept Lecture 6. Introduction to Complexity
CS 600.226: Data Structures Michael Schatz Sept 11 2018 Lecture 6. Itroductio to Complexity Ageda 1. Review HW1 2. Recap 3. Itroductio to complexity Assigmet 1: Due Friday Sept 14 @ 10pm https://github.com/schatzlab/datastructures2018/blob/master/assigmets/assigmet01/assigmet01.md
More informationGuide to Applying Online
Guide to Applyig Olie Itroductio Respodig to requests for additioal iformatio Reportig: submittig your moitorig or ed of grat Pledges: submittig your Itroductio This guide is to help charities submit their
More information6.175: Constructive Computer Architecture. Oct 7,
6.175: Costructive Computer Architecture Tutorial 2 Advaced BSV Qua Nguye (Now uses the correct dates o PPT slides) T02-1 Admiistrivia Today is add date! Please test vlsifarm machies Remaiig labs schedule
More information9.1. Sequences and Series. Sequences. What you should learn. Why you should learn it. Definition of Sequence
_9.qxd // : AM Page Chapter 9 Sequeces, Series, ad Probability 9. Sequeces ad Series What you should lear Use sequece otatio to write the terms of sequeces. Use factorial otatio. Use summatio otatio to
More informationA SOFTWARE MODEL FOR THE MULTILAYER PERCEPTRON
A SOFTWARE MODEL FOR THE MULTILAYER PERCEPTRON Roberto Lopez ad Eugeio Oñate Iteratioal Ceter for Numerical Methods i Egieerig (CIMNE) Edificio C1, Gra Capitá s/, 08034 Barceloa, Spai ABSTRACT I this work
More informationOverview. Another application of Interfaces: the Strategy Design Pattern. n Java interfaces
Aother applicatio of Iterfaces: the Strategy Desig Patter Erich Gamma, Richard Helm, Ralph Johso, Joh Vlissides, Desig Patters Elemets of Reusable Object- Orieted Software, Addiso-Wesley, 1995, AKA GoF
More information6.854J / J Advanced Algorithms Fall 2008
MIT OpeCourseWare http://ocw.mit.edu 6.854J / 18.415J Advaced Algorithms Fall 2008 For iformatio about citig these materials or our Terms of Use, visit: http://ocw.mit.edu/terms. 18.415/6.854 Advaced Algorithms
More informationOverview Chapter 12 A display model
Overview Chapter 12 A display model Why graphics? A graphics model Examples Bjare Stroustrup www.stroustrup.com/programmig 3 Why bother with graphics ad GUI? Why bother with graphics ad GUI? It s very
More informationFirewall and IDS. TELE3119: Week8
Firewall ad IDS TELE3119: Week8 Outlie Firewalls Itrusio Detectio Systems (IDSs) Itrusio Prevetio Systems (IPSs) 8-2 Example Attacks Disclosure, modificatio, ad destructio of data Compromise a host ad
More informationChapter 9 - Object-Oriented Programming: Polymorphism
Chapter 9 - Object-Oriented Programming: Polymorphism Polymorphism Program in the general Introduction Treat objects in same class hierarchy as if all superclass Abstract class Common functionality Makes
More informationn Explore virtualization concepts n Become familiar with cloud concepts
Chapter Objectives Explore virtualizatio cocepts Become familiar with cloud cocepts Chapter #15: Architecture ad Desig 2 Hypervisor Virtualizatio ad cloud services are becomig commo eterprise tools to
More informationObject Oriented Programming. Java-Lecture 11 Polymorphism
Object Oriented Programming Java-Lecture 11 Polymorphism Abstract Classes and Methods There will be a situation where you want to develop a design of a class which is common to many classes. Abstract class
More informationChapter 4. Procedural Abstraction and Functions That Return a Value. Copyright 2015 Pearson Education, Ltd.. All rights reserved.
Chapter 4 Procedural Abstractio ad Fuctios That Retur a Value Copyright 2015 Pearso Educatio, Ltd.. All rights reserved. Overview 4.1 Top-Dow Desig 4.2 Predefied Fuctios 4.3 Programmer-Defied Fuctios 4.4
More information