CS-140 Fall Binghamton University. Methods. Sect. 3.3, 8.2. There s a method in my madness.
|
|
- Ezra Daniels
- 5 years ago
- Views:
Transcription
1 Methods There s a method in my madness. Sect. 3.3, 8.2 1
2 Example Class: Car How Cars are Described Make Model Year Color Owner Location Mileage Actions that can be applied to cars Create a new car Transfer ownership Move to a new location Repaint Delete a car 2
3 What s in a class? Fields The data used to describe an object in the class Methods The functions used to manipulate an object in the class 3
4 Terminology Method: A function in a class definition which implements an action that can be performed on an object Receiver: The object from which the method was invoked most typically, the object which the method acts on. Methods have an implicit parameter of this which refers to the receiver object. Argument: data passed to a method. Arguments are from the invocation point of view, as compared to parameters. Parameter: data passed to a method. Parameters are from the method s point of view, as compared to arguments 4
5 Method Syntax modifiers returntype name (parameters) throws { body Sect. 3.2, 3.3 modifiers : public private static also: protected abstract final synchronize native strictfp returntype : Any primitive or reference type or void name : Any valid identifier 5
6 Parameters Comma separated list of things that look like variable declarations Each parameter is a positional place-holders to hold the values that are to be passed a method to allow it to complete its action The last parameter in the list may specify a variable length list of values. If so, it must be specified as type name where name is interpreted as an array within the method. 6
7 Example Method Headers public static void main(string[ ] args) { int factorial(int n) { public void println(string x) { Modifiers Return Type name Parameters public GridLayout(int rows, int cols, int hgap, int vgap) { public static int sum(int numbers) 7
8 Method Modifiers static vs. Dynamic : See next slides public vs. protected vs. private vs. package-private public method can be used by all java code protected method is visible in super-classes and in the package package-private method is visible only to java code in the package This is the default if nothing else is specified private method is visible only within the class abstract, final,. we ll talk about later 8
9 static methods behave like C class XmpStat { static int add3(int x) { return x+3; class Tester { public static void main() { System.out.println( 20+3= + XmpStat.add3(20)); 9
10 Why static (class) methods? Enable main before any objects are available Enable functions methods which don t act on objects Alternative meaningless empty object which requires creation Enable factory methods methods which create new objects, but are not constructors 10
11 Instance vs. Class Methods If a method is declared as static, it is a class method Invoked like a function not as an action on an object Invocation prefixed by class name and dot Class methods do not have a receiver object Class methods do not have a this implicit parameter Constructors are invoked like a class method Most methods are instance methods methods which are invoked as actions on specific objects Note: Constructors are more like instance methods, even though they are not invoked like instance methods 11
12 Instance Method Invocation Instance methods are invoked by specifying an action to occur to an object DollarsAndCents mymoney = new DollarsAndCents(12,50); mymoney.upordown(1.05); Reference to an object in the DollarsAndCents class Action: Method from the DollarsAndCents class Argument to be passed to the upordown method 12
13 Instance Method Implicit this Parameter The object that receives the action ( the object which the action is performed on) is called the receiver object. The receiver object is implicitly placed in the parameter list of the method, as if (but not actually) you had specified: class Rectangle { void translate(int dx, int dy) { is very similar too static void strans(rectangle workon, int dx, int dy) { 13
14 instance vs. static method invocation Rectangle rect = new Rectangle(10,20,10,40); rect.translate(-5,10); // invoke instance method // implicit : rect passed in as this parameter Rectangle.strans(rect,+5,-10); // invoke class method // explicit : rect passed in as workon parameter 14
15 Return Type Required for all methods EXCEPT constructors Use void to indicate method does not return anything For constructors, return type is implicit A reference to the object of the current class 15
16 Constructors Invoked as: new class(constructor_parameters); class Class of the newly created object constructor_parameters Any parameters required to create the object Constructor method name must match class name! Java creates a new object All fields are initialized to zero or empty or null There is an implicit this argument passed to the method points to the new object with null fields Constructor initializes field values Constructor implicitly returns a reference to this 16
17 Arguments The positional list of values or references passed in to a method (to be kept in a parameter) An argument may be an expression that evaluates to a value or a reference System.out.println("Hello"); factorial(10); panel.setlayout(new GridLayout(2, 2, 5, 5)); Arguments 17
18 Rectangle Class Example Rectangles expressed as (left x, top y, width, height) Rectangle rect1 = new Rectangle(70,90,100,150); translate means move a shape without changing it rect1.translate(100, 80); moves rect1 to (170, 170, 100, 150) 18
19 Rectangle example continued public static void main(string[ ] args) { Rectangle rect1 = new Rectangle(70,90,100,150); Rectangle rect2 = new Rectangle(70,180,200,50); rect1.translate(100, 80); There is only one copy of the code for the method translate, not one copy for each object How is that translate moves rect1 and not rect2? The code of translate has to receive a reference to the object it will read information from or modify See class web page example FirstGUI 19
20 Note: No Code in Objects In section 2.3 of the text, there are diagrams like: Despite these pictures, there is no actual CODE stored in the object! The object ONLY contains the values of the fields for that object The code is stored in memory only once for the entire class 20
21 Method Signatures Java allows multiple definitions of the same method name! As long as the parameters types are different! Method signature includes: name and parameter types When a method is invoked, Java looks at the arguments to determine the signature, and invokes the method with that signature! Often multiple constructors with different signatures Sometimes used for instance or class methods as well 21
22 Example: public class Account { double balance; public Account(double initbalance) { this.balance=initbalance; public Account() { this.balance=0.0; public static void main(string args[]) { my acct1=new Account(120.00); my acct2 = new Account(); 22
23 Method Invocation Internals When a method is invoked, the JVM: Creates an activation record keeps track of info about the current method invocation Saves where the method was invoked from Evaluates argument expressions, and copies the results into the activation record including receiver this Reserves space in the activation record for local variables Executes the method When a return statement is encountered, saves the return value Goes back to the caller of the method Deletes the activation record 23
24 Activation Record Implications Parameters are copied, not passed by reference However, if a reference is copied, you can change the referenced object! New local variables with each invocation No access to local variables before or after invocation But objects referenced can be accessed after invocation as long as you still have a handle. 24
25 Activation Record Example public static void main(string[ ] args) { Rectangle rect1 = new Rectangle(70,90,100,150); Rectangle rect2 = new Rectangle(70,180,200,50); rect1.translate(100, 80); 25
26 Rectangle Class public class Rectangle { int leftx; int topy; int w; int h; public Rectangle(int lx, int ty, int wid, int hgt) { this.leftx=lx; this.topy=ty; this.w=wid; this.h=hgt; void translate(int dx,int dy) { this.leftx+=dx; this.topy+=dy; 26
27 Rectangle Class public class Rectangle { int leftx; int topy; int w; int h; If field names are different than variable names, Java assumes this. public Rectangle(int lx, int ty, int wid, int hgt) { this.leftx=lx; this.topy=ty; this.w=wid; this.h=hgt; void translate(int dx,int dy) { this.leftx+=dx; this.topy+=dy; 27
28 Rectangle Class public class Rectangle { int leftx; int topy; int w; int h; If field names are different than variable names, Java assumes this. public Rectangle(int lx, int ty, int wid, int hgt) { leftx=lx; topy=ty; w=wid; h=hgt; void translate(int dx,int dy) { leftx+=dx; topy+=dy; 28
29 main Binghamton Memory (at start of main) public static void main(string[ ] args) { Rectangle rect1 = new Rectangle(70,90,100,150); Rectangle rect2 = new Rectangle(70,180,200,50); rect1.translate(100, 80); activation records Java Bytecode rect2 rect1 args Next, new will create a rectangle object, and invoke the Rectangle creator 29
30 main Rectangle.Rectangle Binghamton Memory (at start of rect1 constructor) Activation Records this lx=70 ty=90 wid=100 hgt=150 rect2 rect1 args Rectangle leftx 0 topy 0 w 0 h 0 public class Rectangle { Next, the Rectangle creator returns Java Bytecode int leftx; int topy; int w; int h; 30
31 main Binghamton Memory (after rect1 constructor) Java Bytecode Call Stack rect2 rect1 args Rectangle leftx 70 topy 90 w 100 h 150 public Rectangle(int lx, int ty, int wid, int hgt) { leftx=lx; topy=ty; w=wid; h=hgt; Next, rect2 is created similarly, and then the translate method is invoked 31
32 main Rectangle.translate Binghamton Memory (at start of translate method) Java Bytecode Call Stack this dx=100 dy=80 rect2 rect1 args Rectangle leftx 70 topy 90 w 100 public static void main(string[ ] args) { Rectangle rect1 = new Rectangle(70,90,100,150); Rectangle rect2 = new Rectangle(70,180,200,50); rect1.translate(100, 80); h 150 Rectangle leftx 70 topy 180 w 200 h 50 32
33 Accessor vs. Mutator Methods Sect. 2.5 If a method changes the receiver object field values, it is called a mutator method. For example the translate method in Rectangle changes the value of leftx and topy it is a mutator method If a method does not change the receiver object field values, it is called an accessor method. For example the getwidth method in Rectangle does not change any of the fields in rectangle it is an accessor method. If all methods are accessor methods, the Class is called an immutable class For example the String class is immutable. 33
34 Example: Immutable String Class Strings are arrays of characters, so index starts at 0 int z = "CS 140".length( ); //gives z the value 6 String str = "CS 140"; // implicit String creation String s1 = str.substring(0, 2); // s1 is CS char ch = str.charat(3); // gives ch the value '1 34
35 What can we do with Strings? Substring : String substring(int beginindex, int endindex) Replace: String replace(char oldchar, char newchar) Change Case: String tolowercase() Notice, original object is not altered! Strings are immutable. A modified object is returned! 35
36 Demonstrating Immutable Strings String str = This is a test. ; String str2 = str.replace( t, v ); System.out.println(str); System.out.println(str2); This is a test This is a vesv 36
37 Equality : boolean equals(object x) str1 str2 str3 str4 String str1= CS 140 ; String str2= CS 140 ; String str3= CS 220 ; String str4 = str1; String value CS 140 String str1.equals(str2)? str1.equals(str3)? str1==str2? str1==str4? value CS 140 String True False False True strx==stry &&!strx.equals(stry)? value CS 220 False 37
CS-140 Fall Binghamton University. Methods. Sect. 3.3, 8.2. There s a method in my madness.
Methods There s a method in my madness. Sect. 3.3, 8.2 1 Example Class: Car How Cars are Described Make Model Year Color Owner Location Mileage Actions that can be applied to cars Create a new car Transfer
More informationBinghamton University. CS-140 Fall Data Types in Java
Data Types in Java 1 CS-211 2015 Example Class: Car How Cars are Described Make Model Year Color Owner Location Mileage Actions that can be applied to cars Create a new car Transfer ownership Move to a
More informationJ.43 The length field of an array object makes the length of the array available. J.44 ARRAYS
ARRAYS A Java array is an Object that holds an ordered collection of elements. Components of an array can be primitive types or may reference objects, including other arrays. Arrays can be declared, allocated,
More informationJava How to Program, 10/e. Copyright by Pearson Education, Inc. All Rights Reserved.
Java How to Program, 10/e Education, Inc. All Rights Reserved. Each class you create becomes a new type that can be used to declare variables and create objects. You can declare new classes as needed;
More informationAP Computer Science Chapter 10 Implementing and Using Classes Study Guide
AP Computer Science Chapter 10 Implementing and Using Classes Study Guide 1. A class that uses a given class X is called a client of X. 2. Private features of a class can be directly accessed only within
More informationIntroduction to Programming (Java) 4/12
Introduction to Programming (Java) 4/12 Michal Krátký Department of Computer Science Technical University of Ostrava Introduction to Programming (Java) 2008/2009 c 2006 2008 Michal Krátký Introduction
More informationSelected Questions from by Nageshwara Rao
Selected Questions from http://way2java.com by Nageshwara Rao Swaminathan J Amrita University swaminathanj@am.amrita.edu November 24, 2016 Swaminathan J (Amrita University) way2java.com (Nageshwara Rao)
More informationCS 455 Midterm Exam 1 Fall 2017 [Bono] Thursday, Sep. 28, 2017
Name: USC NetID (e.g., ttrojan): CS 455 Midterm Exam 1 Fall 2017 [Bono] Thursday, Sep. 28, 2017 There are 6 problems on the exam, with 55 points total available. There are 10 pages to the exam (5 pages
More informationObject-Oriented Design Lecture 3 CSU 370 Fall 2007 (Pucella) Friday, Sep 14, 2007
Object-Oriented Design Lecture 3 CSU 370 Fall 2007 (Pucella) Friday, Sep 14, 2007 Java We will be programming in Java in this course. Partly because it is a reasonable language, and partly because you
More informationBinghamton University. CS-140 Fall Problem Solving. Creating a class from scratch
Problem Solving Creating a class from scratch 1 Recipe for Writing a Class 1. Write the class boilerplate stuff 2. Declare Fields 3. Write Creator(s) 4. Write accessor methods 5. Write mutator methods
More informationUniversity of British Columbia CPSC 111, Intro to Computation Jan-Apr 2006 Tamara Munzner
University of British Columbia CPSC 111, Intro to Computation Jan-Apr 2006 Tamara Munzner Objects, Methods, Parameters, Input Lecture 5, Thu Jan 19 2006 based on slides by Kurt Eiselt http://www.cs.ubc.ca/~tmm/courses/cpsc111-06-spr
More informationAppendix 3. Description: Syntax: Parameters: Return Value: Example: Java - String charat() Method
Appendix 3 Java - String charat() Method This method returns the character located at the String's specified index. The string indexes start from zero. public char charat(int index) index -- Index of the
More informationManual for Basic Java
Java Boot Camp Boot Camp Manual for Basic Java By The contents of this document are the sole and exclusive property of AgileTestingAlliance.org. They may not be disclosed to any third party, copied or
More informationProgramming Language Concepts: Lecture 2
Programming Language Concepts: Lecture 2 Madhavan Mukund Chennai Mathematical Institute madhavan@cmi.ac.in http://www.cmi.ac.in/~madhavan/courses/pl2011 PLC 2011, Lecture 2, 6 January 2011 Classes and
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 informationFor this section, we will implement a class with only non-static features, that represents a rectangle
For this section, we will implement a class with only non-static features, that represents a rectangle 2 As in the last lecture, the class declaration starts by specifying the class name public class Rectangle
More informationUsing Objects. a first example of an object classes and objects in Java
Using Objects a first example of an object classes and objects in Java classes vs. objects methods constructing an object mutators vs. accessors object references primitive values Strings are special Using
More informationMethods Summer 2010 Margaret Reid-Miller
Methods 15-110 Margaret Reid-Miller Methods A method is a group of programming statements that has a name, e.g., main()! A method definition includes the method header and method body. Flow of control:
More informationExpress Yourself. Writing Your Own Classes
Java Programming 1 Lecture 5 Defining Classes Creating your Own Classes Express Yourself Use OpenOffice Writer to create a new document Save the file as LastFirst_ic05 Replace LastFirst with your actual
More informationJava Primer 1: Types, Classes and Operators
Java Primer 1 3/18/14 Presentation for use with the textbook Data Structures and Algorithms in Java, 6th edition, by M. T. Goodrich, R. Tamassia, and M. H. Goldwasser, Wiley, 2014 Java Primer 1: Types,
More informationStrings. Strings, which are widely used in Java programming, are a sequence of characters. In the Java programming language, strings are objects.
Strings Strings, which are widely used in Java programming, are a sequence of characters. In the Java programming language, strings are objects. The Java platform provides the String class to create and
More informationCS 231 Data Structures and Algorithms, Fall 2016
CS 231 Data Structures and Algorithms, Fall 2016 Dr. Bruce A. Maxwell Department of Computer Science Colby College Course Description Focuses on the common structures used to store data and the standard
More informationObjects and Classes. 1 Creating Classes and Objects. CSCI-UA 101 Objects and Classes
Based on Introduction to Java Programming, Y. Daniel Liang, Brief Version, 10/E 1 Creating Classes and Objects Classes give us a way of defining custom data types and associating data with operations on
More informationProgramming Language Concepts: Lecture 2
Programming Language Concepts: Lecture 2 Madhavan Mukund Chennai Mathematical Institute madhavan@cmi.ac.in http://www.cmi.ac.in/~madhavan/courses/pl2009 PLC 2009, Lecture 2, 19 January 2009 Classes and
More informationComp 248 Introduction to Programming Chapter 4 - Defining Classes Part A
Comp 248 Introduction to Programming Chapter 4 - Defining Classes Part A Dr. Aiman Hanna Department of Computer Science & Software Engineering Concordia University, Montreal, Canada These slides has been
More informationCSC 1051 Algorithms and Data Structures I. Midterm Examination March 2, Name:
CSC 1051 Algorithms and Data Structures I Midterm Examination March 2, 2017 Name: Question Value Score 1 10 2 10 3 20 4 20 5 20 6 20 TOTAL 100 Please answer questions in the spaces provided. If you make
More information3 ADT Implementation in Java
Object-Oriented Design Lecture 3 CS 3500 Spring 2010 (Pucella) Tuesday, Jan 19, 2010 3 ADT Implementation in Java Last time, we defined an ADT via a signature and a specification. We noted that the job
More informationPreview from Notesale.co.uk Page 9 of 108
The following list shows the reserved words in Java. These reserved words may not be used as constant or variable or any other identifier names. abstract assert boolean break byte case catch char class
More informationDEPARTMENT OF COMPUTER SCIENCE & ENGINEERING
Internal Examination 1 Answer Key DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING Branch & Sec : CSE Date : 08.08.2014 Semester : V Sem Max Marks : 50 Marks Sub Code& Title : CS2305 Programming Paradigms
More informationMidterms Save the Dates!
University of British Columbia CPSC 111, Intro to Computation Alan J. Hu (Using the Scanner and String Classes) Anatomy of a Java Program Readings This Week s Reading: Ch 3.1-3.8 (Major conceptual jump
More informationGraphical Interface and Application (I3305) Semester: 1 Academic Year: 2017/2018 Dr Antoun Yaacoub
Lebanese University Faculty of Science Computer Science BS Degree Graphical Interface and Application (I3305) Semester: 1 Academic Year: 2017/2018 Dr Antoun Yaacoub 2 Crash Course in JAVA Classes A Java
More informationLecture 7: Classes and Objects CS2301
Lecture 7: Classes and Objects NADA ALZAHRANI CS2301 1 What is OOP? Object-oriented programming (OOP) involves programming using objects. An object represents an entity in the real world that can be distinctly
More informationAn Introduction To Writing Your Own Classes CSC 123 Fall 2018 Howard Rosenthal
An Introduction To Writing Your Own Classes CSC 123 Fall 2018 Howard Rosenthal Lesson Goals Understand Object Oriented Programming The Syntax of Class Definitions Constructors this Object Oriented "Hello
More information12/22/11. Java How to Program, 9/e. public must be stored in a file that has the same name as the class and ends with the.java file-name extension.
Java How to Program, 9/e Education, Inc. All Rights Reserved. } Covered in this chapter Classes Objects Methods Parameters double primitive type } Create a new class (GradeBook) } Use it to create an object.
More informationChapter 4 Defining Classes I
Chapter 4 Defining Classes I This chapter introduces the idea that students can create their own classes and therefore their own objects. Introduced is the idea of methods and instance variables as the
More informationA Formal Presentation On Writing Classes With Rules and Examples CSC 123 Fall 2018 Howard Rosenthal
A Formal Presentation On Writing Classes With Rules and Examples CSC 123 Fall 2018 Howard Rosenthal Lesson Goals Defining a Class Defining Instance Variables Writing Methods The Object Reference this The
More informationWeiss Chapter 1 terminology (parenthesized numbers are page numbers)
Weiss Chapter 1 terminology (parenthesized numbers are page numbers) assignment operators In Java, used to alter the value of a variable. These operators include =, +=, -=, *=, and /=. (9) autoincrement
More informationBM214E Object Oriented Programming Lecture 8
BM214E Object Oriented Programming Lecture 8 Instance vs. Class Declarations Instance vs. Class Declarations Don t be fooled. Just because a variable might be declared as a field within a class that does
More informationIntro to Computer Science II
Intro to Computer Science II CS112-2012S-04 Strings David Galles Department of Computer Science University of San Francisco 04-0: Types in Java Primative Types Hold simple values Can be stored on the stack
More informationOutline. Inheritance. Abstract Classes Interfaces. Class Extension Overriding Methods Inheritance and Constructors Polymorphism.
Outline Inheritance Class Extension Overriding Methods Inheritance and Constructors Polymorphism Abstract Classes Interfaces 1 OOP Principles Encapsulation Methods and data are combined in classes Not
More informationProgramming II (CS300)
1 Programming II (CS300) Chapter 02: Using Objects MOUNA KACEM mouna@cs.wisc.edu Fall 2018 Using Objects 2 Introduction to Object Oriented Programming Paradigm Objects and References Memory Management
More informationCSCI 161 Introduction to Computer Science
CSCI 161 Introduction to Computer Science Department of Mathematics and Computer Science Lecture 2b A First Look at Class Design Last Time... We saw: How fields (instance variables) are declared How methods
More informationArray. Prepared By - Rifat Shahriyar
Java More Details Array 2 Arrays A group of variables containing values that all have the same type Arrays are fixed length entities In Java, arrays are objects, so they are considered reference types
More informationMore About Classes CS 1025 Computer Science Fundamentals I Stephen M. Watt University of Western Ontario
More About Classes CS 1025 Computer Science Fundamentals I Stephen M. Watt University of Western Ontario The Story So Far... Classes as collections of fields and methods. Methods can access fields, and
More informationHandout 7. Defining Classes part 1. Instance variables and instance methods.
Handout 7 CS180 Programming Fundamentals Spring 15 Page 1 of 8 Handout 7 Defining Classes part 1. Instance variables and instance methods. In Object Oriented programming, applications are comprised from
More informationPace University. Fundamental Concepts of CS121 1
Pace University Fundamental Concepts of CS121 1 Dr. Lixin Tao http://csis.pace.edu/~lixin Computer Science Department Pace University October 12, 2005 This document complements my tutorial Introduction
More informationClass, Variable, Constructor, Object, Method Questions
Class, Variable, Constructor, Object, Method Questions http://www.wideskills.com/java-interview-questions/java-classes-andobjects-interview-questions https://www.careerride.com/java-objects-classes-methods.aspx
More information- Thus there is a String class (a large class)
Strings - Strings in Java are objects - Thus there is a String class (a large class) - In a statement like this: System.out.println( Hello World ); the Java compiler creates a String object from the quoted
More informationImplementing Classes
Implementing Classes Advanced Programming ICOM 4015 Lecture 3 Reading: Java Concepts Chapter 3 Fall 2006 Slides adapted from Java Concepts companion slides 1 Chapter Goals To become familiar with the process
More informationImplementing Classes (P1 2006/2007)
Implementing Classes (P1 2006/2007) Fernando Brito e Abreu (fba@di.fct.unl.pt) Universidade Nova de Lisboa (http://www.unl.pt) QUASAR Research Group (http://ctp.di.fct.unl.pt/quasar) Chapter Goals To become
More informationMethods and Data (Savitch, Chapter 5)
Methods and Data (Savitch, Chapter 5) TOPICS Invoking Methods Return Values Local Variables Method Parameters Public versus Private 2 public class Temperature { public static void main(string[] args) {
More information52 Franck van Breugel and Hamzeh Roumani
52 Franck van Breugel and Hamzeh Roumani Chapter 3 Mixing Static and Non-Static Features 3.1 Introduction In Chapter 1, we focused on static features. Non-static features were the topic of Chapter 2. In
More informationJava Intro 3. Java Intro 3. Class Libraries and the Java API. Outline
Java Intro 3 9/7/2007 1 Java Intro 3 Outline Java API Packages Access Rules, Class Visibility Strings as Objects Wrapper classes Static Attributes & Methods Hello World details 9/7/2007 2 Class Libraries
More information! Rest of Chap 2 ! 2.3-4, ! Rest of Chap 4 ! ! Things that do not vary. ! unlike variables. ! will never change. !
University of British Columbia CPSC 111, Intro to Computation Jan-Apr 2006 Tamara Munzner Objects, Methods, Parameters, Input! Rest of Chap 2! 2.3-4, 2.6-2.10! Rest of Chap 4! 4.3-4.7 Reading This Week
More informationA Founda4on for Programming
3.1 Objects LOGO STYLE GUIDE Schools within the University Introduction to Programming in Java: An Interdisciplinary Approach Robert Sedgewick and Kevin Wayne Copyright 2002 2010 3/16/14 11:29 PM A Founda4on
More informationCS-202 Introduction to Object Oriented Programming
CS-202 Introduction to Object Oriented Programming California State University, Los Angeles Computer Science Department Lecture III Inheritance and Polymorphism Introduction to Inheritance Introduction
More informationCOMP-202. Recursion. COMP Recursion, 2011 Jörg Kienzle and others
COMP-202 Recursion Recursion Recursive Definitions Run-time Stacks Recursive Programming Recursion vs. Iteration Indirect Recursion Lecture Outline 2 Recursive Definitions (1) A recursive definition is
More informationCS 251 Intermediate Programming Methods and Classes
CS 251 Intermediate Programming Methods and Classes Brooke Chenoweth University of New Mexico Fall 2018 Methods An operation that can be performed on an object Has return type and parameters Method with
More informationCS 251 Intermediate Programming Methods and More
CS 251 Intermediate Programming Methods and More Brooke Chenoweth University of New Mexico Spring 2018 Methods An operation that can be performed on an object Has return type and parameters Method with
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 informationCS 1302 Chapter 9 (Review) Object & Classes
CS 1302 Chapter 9 (Review) Object & Classes Reference Sections 9.2-9.5, 9.7-9.14 9.2 Defining Classes for Objects 1. A class is a blueprint (or template) for creating objects. A class defines the state
More informationCS/B.TECH/CSE(OLD)/SEM-6/CS-605/2012 OBJECT ORIENTED PROGRAMMING. Time Allotted : 3 Hours Full Marks : 70
CS/B.TECH/CSE(OLD)/SEM-6/CS-605/2012 2012 OBJECT ORIENTED PROGRAMMING Time Allotted : 3 Hours Full Marks : 70 The figures in the margin indicate full marks. Candidates are required to give their answers
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 informationProgramming Language Concepts: Lecture 1
Programming Language Concepts: Lecture 1 Madhavan Mukund Chennai Mathematical Institute madhavan@cmi.ac.in http://www.cmi.ac.in/~madhavan/courses/pl2009 PLC 2009, Lecture 1, 12 January 2009 Data and datatypes
More informationObject Oriented Programming 2015/16. Final Exam June 28, 2016
Object Oriented Programming 2015/16 Final Exam June 28, 2016 Directions (read carefully): CLEARLY print your name and ID on every page. The exam contains 8 pages divided into 4 parts. Make sure you have
More information3.1 Class Declaration
Chapter 3 Classes and Objects OBJECTIVES To be able to declare classes To understand object references To understand the mechanism of parameter passing To be able to use static member and instance member
More informationReview: Array Initializer Lists
More on Arrays Review of Arrays of ints, doubles, chars Arrays of objects Command line arguments The ArrayList class Javadoc Review Lecture 8 notes and L&L 7.1 7.2 Reading for this lecture: L&L 7.3 7.7,
More informationCOMP 250 Winter 2011 Reading: Java background January 5, 2011
Almost all of you have taken COMP 202 or equivalent, so I am assuming that you are familiar with the basic techniques and definitions of Java covered in that course. Those of you who have not taken a COMP
More informationLecture Notes CPSC 224 (Spring 2012) Today... Java basics. S. Bowers 1 of 8
Today... Java basics S. Bowers 1 of 8 Java main method (cont.) In Java, main looks like this: public class HelloWorld { public static void main(string[] args) { System.out.println("Hello World!"); Q: How
More informationCS-140 Fall 2018 Test 2 Version A Nov. 12, Name:
CS-140 Fall 2018 Test 2 Version A Nov. 12, 2018 Name: 1. (10 points) For the following, Check T if the statement is true, or F if the statement is false. (a) X T F : A class in Java contains fields, and
More informationComments are almost like C++
UMBC CMSC 331 Java Comments are almost like C++ The javadoc program generates HTML API documentation from the javadoc style comments in your code. /* This kind of comment can span multiple lines */ //
More informationUnit 4: Classes and Objects Notes
Unit 4: Classes and Objects Notes AP CS A Another Data Type. So far, we have used two types of primitive variables: ints and doubles. Another data type is the boolean data type. Variables of type boolean
More informationComputer Science II Data Structures
Computer Science II Data Structures Instructor Sukumar Ghosh 201P Maclean Hall Office hours: 10:30 AM 12:00 PM Mondays and Fridays Course Webpage homepage.cs.uiowa.edu/~ghosh/2116.html Course Syllabus
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 informationCSC 1051 Algorithms and Data Structures I. Midterm Examination March 1, Name: KEY A
CSC 1051 Algorithms and Data Structures I Midterm Examination March 1, 2018 Name: KEY A Question Value Score 1 20 2 20 3 20 4 20 5 20 TOTAL 100 Please answer questions in the spaces provided. If you make
More informationSubclassing for ADTs Implementation
Object-Oriented Design Lecture 8 CS 3500 Fall 2009 (Pucella) Tuesday, Oct 6, 2009 Subclassing for ADTs Implementation An interesting use of subclassing is to implement some forms of ADTs more cleanly,
More informationLecture Notes Chapter #9_b Inheritance & Polymorphism
Lecture Notes Chapter #9_b Inheritance & Polymorphism Inheritance results from deriving new classes from existing classes Root Class all java classes are derived from the java.lang.object class GeometricObject1
More informationCS 112 Introduction to Computing II. Wayne Snyder Computer Science Department Boston University
9/5/6 CS Introduction to Computing II Wayne Snyder Department Boston University Today: Arrays (D and D) Methods Program structure Fields vs local variables Next time: Program structure continued: Classes
More informationComp 248 Introduction to Programming Chapter 4 & 5 Defining Classes Part B
Comp 248 Introduction to Programming Chapter 4 & 5 Defining Classes Part B Dr. Aiman Hanna Department of Computer Science & Software Engineering Concordia University, Montreal, Canada These slides has
More informationProgramming by Delegation
Chapter 2 a Programming by Delegation I. Scott MacKenzie a These slides are mostly based on the course text: Java by abstraction: A client-view approach (4 th edition), H. Roumani (2015). 1 Topics What
More informationCrash Course in Java. Why Java? Java notes for C++ programmers. Network Programming in Java is very different than in C/C++
Crash Course in Java Netprog: Java Intro 1 Why Java? Network Programming in Java is very different than in C/C++ much more language support error handling no pointers! (garbage collection) Threads are
More informationIntroduction to Programming Using Java (98-388)
Introduction to Programming Using Java (98-388) Understand Java fundamentals Describe the use of main in a Java application Signature of main, why it is static; how to consume an instance of your own class;
More informationCOMP 250: Java Programming I. Carlos G. Oliver, Jérôme Waldispühl January 17-18, 2018 Slides adapted from M. Blanchette
COMP 250: Java Programming I Carlos G. Oliver, Jérôme Waldispühl January 17-18, 2018 Slides adapted from M. Blanchette Variables and types [Downey Ch 2] Variable: temporary storage location in memory.
More informationBM214E Object Oriented Programming Lecture 4
BM214E Object Oriented Programming Lecture 4 Computer Numbers Integers (byte, short, int, long) whole numbers exact relatively limited in magnitude (~10 19 ) Floating Point (float, double) fractional often
More informationComputer Science II (20073) Week 1: Review and Inheritance
Computer Science II 4003-232-01 (20073) Week 1: Review and Inheritance Richard Zanibbi Rochester Institute of Technology Review of CS-I Hardware and Software Hardware Physical devices in a computer system
More informationPractice exam for CMSC131-04, Fall 2017
Practice exam for CMSC131-04, Fall 2017 Q1 makepalindrome - Relevant topics: arrays, loops Write a method makepalidrome that takes an int array, return a new int array that contains the values from the
More informationInheritance and Polymorphism
Inheritance and Polymorphism Dr. M. G. Abbas Malik Assistant Professor Faculty of Computing and IT (North Jeddah Branch) King Abdulaziz University, Jeddah, KSA mgmalik@kau.edu.sa www.sanlp.org/malik/cpit305/ap.html
More informationProgramming with Java
Programming with Java String & Making Decision Lecture 05 First stage Software Engineering Dep. Saman M. Omer 2017-2018 Objectives By the end of this lecture you should be able to : Understand another
More informationImplementing non-static features
Implementing non-static features Problem Implement the Rectangle class. What have we done so far? attributes constructors accessors mutators getarea tostring scale equals compareto Duplicates What will
More informationMutating Object State and Implementing Equality
Mutating Object State and Implementing Equality 6.1 Mutating Object State Goals Today we touch the void... (sounds creepy right... see the movie, or read the book, to understand how scary the void can
More information9 Working with the Java Class Library
9 Working with the Java Class Library 1 Objectives At the end of the lesson, the student should be able to: Explain object-oriented programming and some of its concepts Differentiate between classes and
More informationStrings. Strings and their methods. Dr. Siobhán Drohan. Produced by: Department of Computing and Mathematics
Strings Strings and their methods Produced by: Dr. Siobhán Drohan Department of Computing and Mathematics http://www.wit.ie/ Topics list Primitive Types: char Object Types: String Primitive vs Object Types
More informationStrings. Strings and their methods. Mairead Meagher Dr. Siobhán Drohan. Produced by: Department of Computing and Mathematics
Strings Strings and their methods Produced by: Mairead Meagher Dr. Siobhán Drohan Department of Computing and Mathematics http://www.wit.ie/ Topics list Primitive Types: char Object Types: String Primitive
More informationCS 61C: Great Ideas in Computer Architecture Introduction to C
CS 61C: Great Ideas in Computer Architecture Introduction to C Instructors: Vladimir Stojanovic & Nicholas Weaver http://inst.eecs.berkeley.edu/~cs61c/ 1 Agenda C vs. Java vs. Python Quick Start Introduction
More informationFaculty of Science COMP-202A - Introduction to Computing I (Fall 2008) Final Examination
First Name: Last Name: McGill ID: Section: Faculty of Science COMP-202A - Introduction to Computing I (Fall 2008) Final Examination Thursday, December 11, 2008 Examiners: Mathieu Petitpas [Section 1] 14:00
More informationMore non-primitive types Lesson 06
CSC110 2.0 Object Oriented Programming Ms. Gnanakanthi Makalanda Dept. of Computer Science University of Sri Jayewardenepura More non-primitive types Lesson 06 1 2 Outline 1. Two-dimensional arrays 2.
More informationCOMP-202 Unit 8: Defining Your Own Classes. CONTENTS: Class Definitions Attributes Methods and Constructors Access Modifiers and Encapsulation
COMP-202 Unit 8: Defining Your Own Classes CONTENTS: Class Definitions Attributes Methods and Constructors Access Modifiers and Encapsulation Defining Our Own Classes (1) So far, we have been creating
More informationObject Oriented Modeling
Object Oriented Modeling Object oriented modeling is a method that models the characteristics of real or abstract objects from application domain using classes and objects. Objects Software objects are
More informationLecture 5: Methods CS2301
Lecture 5: Methods NADA ALZAHRANI CS2301 1 Opening Problem Find the sum of integers from 1 to 10, from 20 to 30, and from 35 to 45, respectively. 2 Solution public static int sum(int i1, int i2) { int
More informationCS/B.TECH/CSE(New)/SEM-5/CS-504D/ OBJECT ORIENTED PROGRAMMING. Time Allotted : 3 Hours Full Marks : 70 GROUP A. (Multiple Choice Type Question)
CS/B.TECH/CSE(New)/SEM-5/CS-504D/2013-14 2013 OBJECT ORIENTED PROGRAMMING Time Allotted : 3 Hours Full Marks : 70 The figures in the margin indicate full marks. Candidates are required to give their answers
More information