CS 170, Section /3/2009 CS170, Section 000, Fall
|
|
- Jared Shields
- 5 years ago
- Views:
Transcription
1 Lecture 18: Objects CS 170, Section November /3/2009 CS170, Section 000, Fall
2 Lecture Plan Homework 5 : questions, comments? Managing g g Data: objects to make your life easier ArrayList: (more examples) Hashtable: (more examples) Objects t in Java (Chapter 7 cont d) CS170, Section 000, Fall
3 Homework 5: (due Wed Nov 4) Problem: given encrypted text file, break the cipher and print the plain-text (original) message to standard output. Command line arguments: encrypted text, dictionary file (both file names given from command line). Output: original plaintext Simplifying assumptions: No punctuation, numbers in input All words in plaintext are in dictionary, and are in lower case. Dictionary is small (less than 2000 words). 11/3/2009 CS170, Section 000, Fall
4 HW5 (cont d): Approach Overall approach (brute force/dictionary attack) Assume plain text comes from a dictionary Try all possible shifts until each word in a message is found in the dictionary Implementation approach: Read encrypted text from a file, split into words, store into array of words (separate string/entry for each word) Read dictionary, store each word (e.g., in array for now), use individual id string for each word Write a method to search for a given word from the encrypted text in the dictionary can use Hashtable so store/lookup words in dictionary! 11/3/2009 CS170, Section 000, Fall
5 Lecture Plan Homework 5 : questions, comments? Managing g gdata: objects to make your life easier ArrayList: (more examples) Hashtable: (more examples) Objects t in Java (Chapter 7 cont d) CS170, Section 000, Fall
6 What is an ArrayList A dynamically re-sizeable array, so that the total number of elements does not need to be known when created Full documentation: Full documentation: tml
7 ArrayList, cont'd. ArrayList features think of it as an auto-resizing array, that can hold any type of object, with many convenient methods maintains most of the benefits of arrays, such as fast random access can call tostring on an ArrayList to print it remember to import java.util.*; 7
8 ArrayList vs. array import java.util.*; public void main(string [] args){ //construction String[] names = new String[5]; ArrayList nameslist = new ArrayList(); //storage names[0] = "Jennifer"; nameslist.add("jennifer"); //retrieval String name = names[0]; String name = (String) nameslist.get(0); } 8
9 ArrayList vs. array, cont'd. removal (of element #2) for (int i = 2; i < names.length - 1;i++) names[i] = names[i+1]; nameslist.remove(2); search to see if "Marty" is there for (int i = 0; i < names.length; i++) if (names[i].equals( equals("marty")) {... } if (nameslist.contains("marty")) {... } erase all names from the list for (int i = 0; i < names.length; i++) names[i] = null; nameslist.clear(); 9
10 Is an Object in the ArrayList? int indexof(object elem) Searches for the first occurrence equal to the given argument Tests for equality using the equals method Returns position in the list, or -1 if not found boolean contains(object elem) Returns true if this list contains the specified element
11 Important: What s Really Stored ArrayLists (as declared here) store object-references to data of type Object So anything added to an ArrayList must be converted to an Object first Some of this is automatic in Java 5.0 Important: when retrieving an item with get(), you must convert it to the type you orignally stored If you re storing primitive iti types (e.g. int, double) you need to use a wrapper class (e.g. Integer, Double) See your favorite Java book for more on those
12 Adding and Retrieving in Java 5.0 When putting data into an ArrayList: The parameter to add() or set() can be either a primitive type or an object-reference without a problem When retrieving: You must cast the return value to the appropriate class int x = (Integer) myintlist.get(i); String p = (String) mystringlist.get(i); ArrayList list = new ArrayList(); list.add(42); int value = (Integer) list.get(0);
13 Hash Tables Hash Tables 13
14 Constructor Methods Hashtable() Constructs a new, empty hashtable with a default initial capacity (11) and load dfactor, which h is Hashtable(int initialcapacity) Constructs a new, empty hashtable with the specified initial capacity and default load factor, which is Hashtable numbers = new Hashtable(); numbers.put("one", new Integer(1)); numbers.put("two", new Integer(2)); numbers.put("three", new Integer(3)); Integer n = (Integer)numbers.get("two"); if (n!= null) { System.out.println("two = " + n); } 14
15 Methods Object get(object key) Returns the value to which the specified key is mapped in this hashtable. Object put(object key, Object value) Maps the specified key to the specified value in this hashtable. Objec remove(object key) Removes the key (and its corresponding value) from this hashtable void clear() Clears this hashtable so that it contains no keys. boolean contains(object value) Tests if some key maps into the specified value in this hashtable. boolean isempty() Tests if this hashtable maps no keys to values. boolean containskey(object key) Tests if the specified object is a key in this hashtable. 15
16 Objects (Chapter 7) Formal introduction 11/3/2009 CS170, Section 000, Fall
17 Motivation We already know a lot about programming But Java is Object-Oriented dlanguage, so where are all the objects? For developing graphical user interfaces and large scale software systems we need to know OO programming techniques 17
18 Levels of Abstraction: Software Design Old times: computer programs manipulated primitive types such as numbers and characters Manipulating too many of these primitive quantities ii is too much hfor programmers and leads to errors Solution: Encapsulate routine computations to software black boxes
19 Levels of Abstraction: Software Design
20 Objects and Classes Object-oriented programming (OOP) involves programming using objects Object: entity that you can manipulate in your programs Data fields: state of an object Methods: instructions that accesses or modifies the state of an object Class: construct that defines objects of the same type (set of objects with the same behaviour) Definition of data fields: properties of defined objects Definition of methods: behaviours of defined objects Each object belongs to a class
21 Objects and Classes Object: entity that you can manipulate in your programs Class: blueprint for the objects 21
22 Programming with Objects and Defining a class Classes Creating objects using a class and using the objects Using existing classes in Java API
23 Classes A Java class uses variables to define data fields A class uses methods to define behaviors which accesses or modifies the data fields A class provides a special type of methods, known as constructors, which are used to construct and initialize objects from the class 23
24 Circle example Circle Properties: radius Behavior: compute area Circle class Data fields: radius Constructors Methods: getarea()
25 UML design UML Class Diagram Circle Class name radius: double Data fields Circle() Circle(newRadius: double) Constructors and Methods getarea(): double circle1: Circle radius: dus: 10 circle2: Circle radius: 25 circle3: Circle radius: 125 UML notation for objects 25
26 Classes class Circle { /** The radius of this circle */ double radius = 1.0; /** Construct a circle object */ Circle() { } /** Construct a circle object */ Circle(double newradius) { radius = newradius; } Data field Constructors Where is the main method? } /** Return the area of this circle */ double getarea() { return radius * radius * ; } Method 26
27 Syntax: Class Definition accessspecifier class ClassName { constructors methods fields } Example: public class Circle { Circle (double newradius) {... } getarea() {... } double radius;... } Purpose: To define a class
28 Constructors Circle() { } No-args constructor Circle(double newradius) { radius = newradius; Constructor that takes one double parameter } Constructors are a special kind of methods that are invoked to construct objects 28
29 Constructors Constructors must have the same name as the class itself Constructors do not have a return type - not even void A class may be declared without constructors In this case, a no-arg constructor with an empty body is implicitly declared in the class (default constructor) 29
30 Syntax: Constructor Definition accessspecifier ClassName(parameterType parametername,...) { constructor body } Example: public Circle (double radius) {... } Purpose: To define the behavior of a constructor
31 Creating and Using Objects Declaring object reference variables Creating objects Accessing objects
32 Declaring Object Reference Variables To declare a reference variable, use the syntax: ClassName objectrefvar; Example: Circle mycircle; 32
33 Creating Objects Using Constructors Invoking a class constructor using the new operator to create an object new ClassName(); To reference an object, assign the object to a reference Example: variable. Circle mycircle; mycircle = new Circle(5.0); 33
34 Declaring/Creating Objects in a Single Step ClassName objectrefvar = new ClassName(); Assign object reference Create an object Example: Circle mycircle = new Circle(); 34
35 Accessing Objects Referencing the object s data: objectrefvar.data e.g., mycircle.radius Invoking the object s method: objectrefvar.methodname(arguments) eg e.g., mycircle.getarea() 35
36 Example: Circle Class and Tester Class Circle1.java defines a Circle class which can be used to create Circle objects TestCircle1.java a tester class that tests Circle class by creating Circle objects and invoking methods Trace the program of TestCircle1.java 36
37 Primitive data types vs. object data types Variables of primitive data types store the actual value Variables of object types store the reference to the object 37
38 Copying Variables of Primitive Data Types and Object Types Primitive type assignment i = j Before: After: i 1 i 2 j 2 j 2 Object type assignment c1 = c2 c1 Before: c1 After: c2 c2 c1: Circle C2: Circle c1: Circle C2: Circle radius = 5 radius = 9 radius = 5 radius = 9 38
39 The null Value What if we forget to create an object and assign the reference to our object variable? If a data field of a reference type does not reference any object, the data field holds a special value: null Circle c; double r = c.getradius(); Compilation Error c Reference value: null 39
40 The null Value Create an object and initialize the object reference variable before trying to use it Circle c; double r = c.getradius(); Circle c = new Circle(10); double d = c.getradius(); c Reference value 40
41 Reference Data Fields The data fields can be of reference types For example, the following Student class contains a data field name of the String type String is a REFERENCE TYPE as well (it is a class) public class Student { } String name; // name has default value null int age; // age has default value 0 boolean issciencemajor; // issciencemajor has default value false char gender; //gender has default value (char)0 41
42 Default Value for a Data Field The default value of a data fields: null for a reference type 0 for a numeric type false for a boolean type (char)0 for a char type 42
43 Default Value for a Data Field public class Student { String name; // name has default value null int age; // age has default value 0 boolean issciencemajor; // issciencemajor has default value false char gender; //gender has default value (char)0 } public class Test { public static void main(string[] args) { Student student = new Student(); System.out.println("name? " + student.name); System.out.println("age? " + student.age); System.out.println("isScienceMajor? " + student.issciencemajor); System.out.println("gender? " + student.gender); } } 43
44 Warning! Java assigns no default value to a local variable inside a method public class Test { public static void main(string[] args) { int x; // x has no default value String y; // y has no default value System.out.println( println("x is " + x); System.out.println("y is " + y); } } Compilation error: variables not initialized 44
45 Bank account example State (property) of bank account current balance Behaviour of bank account deposit money withdraw money get balance
46 Define and implement BankAccount class Instance fields balance Constructors initialize instance fields Methods may nor may not change the instance fields, and may or may not return an output value withdraw() deposit() getbalance()
47 Test the Class BankAccountTester Create a test class: a class with a main method that contains statements to test another class. 1. Construct one or more objects of the class that is being tested 2. Invoke one or more methods 3. Print out one or more results BankAccount.java BankAccountTester.java
48 Review When you run the BankAccountTester program, how many objects of class BankAccount are constructed? How many objects of type BankAccountTester? nttester?
Chapter 8 Objects and Classes Part 1
Chapter 8 Objects and Classes Part 1 1 OO Programming Concepts Object-oriented programming (OOP) involves programming using objects. An object represents an entity in the real world that can be distinctly
More informationOO Programming Concepts. Classes. Objects. Chapter 8 User-Defined Classes and ADTs
Chapter 8 User-Defined Classes and ADTs Objectives To understand objects and classes and use classes to model objects To learn how to declare a class and how to create an object of a class To understand
More informationChapter 8 Objects and Classes. Liang, Introduction to Java Programming, Ninth Edition, (c) 2013 Pearson Education, Inc. All rights reserved.
Chapter 8 Objects and Classes 1 Motivations After learning the preceding chapters, you are capable of solving many programming problems using selections, loops, methods, and arrays. However, these Java
More informationOO Programming Concepts
Chapter 8 Objects and Classes 1 Motivations After learning the preceding chapters, you are capable of solving many programming problems using selections, loops, methods, and arrays. However, these Java
More informationChapter 9 Objects and Classes. Liang, Introduction to Java Programming, Eleventh Edition, (c) 2017 Pearson Education, Inc. All rights reserved.
Chapter 9 Objects and Classes 1 Motivations After learning the preceding chapters, you are capable of solving many programming problems using selections, loops, methods, and arrays. However, these Java
More informationECOM 2324 COMPUTER PROGRAMMING II
ECOM 2324 COMPUTER PROGRAMMING II Object Oriented Programming with JAVA Instructor: Ruba A. Salamh Islamic University of Gaza 2 CHAPTER 9 OBJECTS AND CLASSES Motivations 3 After learning the preceding
More informationChapter 9 Objects and Classes. OO Programming Concepts. Classes. Objects. Motivations. Objectives. CS1: Java Programming Colorado State University
Chapter 9 Objects and Classes CS1: Java Programming Colorado State University Motivations After learning the preceding chapters, you are capable of solving many programming problems using selections, loops,
More informationChapter 9. Objects and Classes
Chapter 9 Objects and Classes 1 OO Programming in Java Other than primitive data types (byte, short, int, long, float, double, char, boolean), everything else in Java is of type object. Objects we already
More informationChapter 8 Objects and Classes
Chapter 8 Objects and Classes 1 Motivations After learning the preceding chapters, you are capable of solving many programming problems using selections, loops, methods, and arrays. However, these Java
More informationChapter 9 Objects and Classes. Liang, Introduction to Java Programming, Tenth Edition, (c) 2015 Pearson Education, Inc. All rights reserved.
Chapter 9 Objects and Classes rights reserved. 1 Motivations After learning the preceding chapters, you are capable of solving many programming problems using selections, loops, methods, and arrays. However,
More informationCIS3023: Programming Fundamentals for CIS Majors II Summer 2010
CIS3023: Programming Fundamentals for CIS Majors II Summer 2010 Objects and Classes (contd.) Course Lecture Slides 19 May 2010 Ganesh Viswanathan Objects and Classes Credits: Adapted from CIS3023 lecture
More informationIntroduction to OOP with Java. Instructor: AbuKhleif, Mohammad Noor Sep 2017
Introduction to OOP with Java Instructor: AbuKhleif, Mohammad Noor Sep 2017 Lecture 07: OOP Part 1 Instructor: AbuKhleif, Mohammad Noor Sep 2017 Instructor AbuKhleif, Mohammad Noor Computer Engineer (JU
More informationUFCE3T-15-M Object-oriented Design and Programming
UFCE3T-15-M Object-oriented Design and Programming Block1: Objects and Classes Jin Sa 27-Sep-05 UFCE3T-15-M Programming part 1 Objectives To understand objects and classes and use classes to model objects.
More informationCSEN401 Computer Programming Lab. Topics: Introduction and Motivation Recap: Objects and Classes
CSEN401 Computer Programming Lab Topics: Introduction and Motivation Recap: Objects and Classes Prof. Dr. Slim Abdennadher 16.2.2014 c S. Abdennadher 1 Course Structure Lectures Presentation of topics
More informationChapter 3 Objects and Classes
Chapter 3 Objects and Classes Topics OO Programming Concepts Creating Objects and Object Reference Variables Constructors Modifiers Instance and Class Variables and Methods Scope of Variables OO Programming
More informationLiang, Introduction to Java Programming, Ninth Edition, (c) 2013 Pearson Education, Inc. All rights reserved.
Chapter 8 Objects and Classes Lecture notes for computer programming 1 Faculty of Engineering and Information Technology Prepared by: Iyad Albayouk 1 Motivations After learning the preceding chapters,
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 information11-1. Collections. CSE 143 Java. Java 2 Collection Interfaces. Goals for Next Several Lectures
Collections CSE 143 Java Collections Most programs need to store and access collections of data Collections are worth studying because... They are widely useful in programming They provide examples of
More informationChapter 8 Objects and Classes
Chapter 8 Objects and Classes 1 Motivations After learning the preceding chapters, you are capable of solving many programming problems using selections, loops, methods, and arrays. However, these Java
More informationCollections. Collections Collection types Collection wrappers Composite classes revisited Collection classes Hashtables Enumerations
References: Beginning Java Objects, Jacquie Barker; The Java Programming Language, Ken Arnold and James Gosling; IT350 Internet lectures 9/16/2003 1 Collections Collection types Collection wrappers Composite
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 informationtostring() Method tostring() Method -Example tostring() Method -Example StringBufferClass StringBuffer class - Constructors
tostring() Method Arrays, Strings and Collections [2] Rajkumar Buyya Grid Computing and Distributed Systems (GRIDS) Laboratory Dept. of Computer Science and Software Engineering University of Melbourne,
More informationEXAM Computer Science 1 Part 1
Maastricht University Faculty of Humanities and Science Department of Knowledge Engineering EXAM Computer Science 1 Part 1 Block 1.1: Computer Science 1 Code: KEN1120 Examiner: Kurt Driessens Date: Januari
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 informationAgenda: Notes on Chapter 3. Create a class with constructors and methods.
Bell Work 9/19/16: How would you call the default constructor for a class called BankAccount? Agenda: Notes on Chapter 3. Create a class with constructors and methods. Objectives: To become familiar with
More informationProgramming in the Large II: Objects and Classes (Part 1)
Programming in the Large II: Objects and Classes (Part 1) 188230 Advanced Computer Programming Asst. Prof. Dr. Kanda Runapongsa Saikaew (krunapon@kku.ac.th) Department of Computer Engineering Khon Kaen
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 informationCollections. Collections. Collections - Arrays. Collections - Arrays
References: Beginning Java Objects, Jacquie Barker; The Java Programming Language, Ken Arnold and James Gosling; IT350 Internet lectures Collections Collection types Collection wrappers Composite classes
More informationInf1-OOP. Data Types. Defining Data Types in Java. type value set operations. Overview. Circle Class. Creating Data Types 1.
Overview Inf1-OOP Creating Data Types 1 Circle Class Object Default Perdita Stevens, adapting earlier version by Ewan Klein Format Strings School of Informatics January 11, 2015 HotelRoom Class More on
More informationCS171:Introduction to Computer Science II
CS171:Introduction to Computer Science II Department of Mathematics and Computer Science Li Xiong 1/24/2012 1 Roadmap Lab session Pretest Postmortem Java Review Types, variables, assignments, expressions
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 informationA simple map: Hashtable
Using Maps A simple map: Hashtable To create a Hashtable, use: import java.util.*; Hashtable table = new Hashtable(); To put things into a Hashtable, use: table.put(key, value); To retrieve a value from
More informationCreating and Using Objects
Creating and Using Objects 1 Fill in the blanks Object behaviour is described by, and object state is described by. Fill in the blanks Object behaviour is described by methods, and object state is described
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 informationLecture 6 Introduction to Objects and Classes
Lecture 6 Introduction to Objects and Classes Outline Basic concepts Recap Computer programs Programming languages Programming paradigms Object oriented paradigm-objects and classes in Java Constructors
More information2/9/2012. Chapter Three: Implementing Classes. Chapter Goals
Chapter Three: Implementing Classes Chapter Goals To become familiar with the process of implementing classes To be able to implement simple methods To understand the purpose and use of constructors To
More information9/2/2011. Chapter Goals
Chapter Goals To become familiar with the process of implementing classes To be able to implement simple methods To understand the purpose and use of constructors To understand how to access instance fields
More informationComputer Science II (20082) Week 1: Review and Inheritance
Computer Science II 4003-232-08 (20082) Week 1: Review and Inheritance Richard Zanibbi Rochester Institute of Technology Review of CS-I Syntax and Semantics of Formal (e.g. Programming) Languages Syntax
More informationPrograms as Models. Procedural Paradigm. Class Methods. CS256 Computer Science I Kevin Sahr, PhD. Lecture 11: Objects
CS256 Computer Science I Kevin Sahr, PhD Lecture 11: Objects 1 Programs as Models remember: we write programs to solve realworld problems programs act as models of the real-world problem to be solved one
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 informationArray Based Lists. Collections
Array Based Lists Reading: RS Chapter 15 1 Collections Data structures stores elements in a manner that makes it easy for a client to work with the elements Specific collections are specialized for particular
More informationVARIABLES AND TYPES CITS1001
VARIABLES AND TYPES CITS1001 Scope of this lecture Types in Java the eight primitive types the unlimited number of object types Values and References The Golden Rule Primitive types Every piece of data
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 informationECE 122. Engineering Problem Solving with Java
ECE 122 Engineering Problem Solving with Java Lecture 14 Array Wrap-Up Outline Problem: How can I store information in arrays without complicated array management? The Java language supports ArrayLists
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 informationAgenda CS121/IS223. Reminder. Object Declaration, Creation, Assignment. What is Going On? Variables in Java
CS121/IS223 Object Reference Variables Dr Olly Gotel ogotel@pace.edu http://csis.pace.edu/~ogotel Having problems? -- Come see me or call me in my office hours -- Use the CSIS programming tutors Agenda
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 informationSTUDENT LESSON A5 Designing and Using Classes
STUDENT LESSON A5 Designing and Using Classes 1 STUDENT LESSON A5 Designing and Using Classes INTRODUCTION: This lesson discusses how to design your own classes. This can be the most challenging part of
More informationJAVA: A Primer. By: Amrita Rajagopal
JAVA: A Primer By: Amrita Rajagopal 1 Some facts about JAVA JAVA is an Object Oriented Programming language (OOP) Everything in Java is an object application-- a Java program that executes independently
More informationObject-Oriented Programming Concepts
Object-Oriented Programming Concepts Object-oriented programming מונחה עצמים) (תכנות involves programming using objects An object ) represents (עצם an entity in the real world that can be distinctly identified
More informationObject Oriented System Development Paradigm. Sunnie Chung CIS433 System Analysis Methods
Object Oriented System Development Paradigm Sunnie Chung CIS433 System Analysis Methods OO Programming Concepts Object-oriented programming (OOP) involves programming using objects. An object represents
More informationChapter 1-9, 12-13, 18, 20, 23 Review Slides. What is a Computer?
Chapter 1-9, 12-13, 18, 20, 23 Review Slides CS1: Java Programming Colorado State University Original slides by Daniel Liang Modified slides by Chris Wilcox rights reserved. 1 What is a Computer? A computer
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 informationAnnouncements. Java Review. More Announcements. Today. Assembly Language. Machine Language
Announcements Java Review Java Bootcamp Another session tonight 7-9 in B7 Upson tutorial & solutions also available online Assignment 1 has been posted and is due Monday, July 2, 11:59pm Lecture 2 CS211
More informationCS121/IS223. Object Reference Variables. Dr Olly Gotel
CS121/IS223 Object Reference Variables Dr Olly Gotel ogotel@pace.edu http://csis.pace.edu/~ogotel Having problems? -- Come see me or call me in my office hours -- Use the CSIS programming tutors CS121/IS223
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 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 informationJava Language Features
Java Language Features References: Object-Oriented Development Using Java, Xiaoping Jia Internet Course notes by E.Burris Computing Fundamentals with Java, by Rick Mercer Beginning Java Objects - From
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 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 informationBig O & ArrayList Fall 2018 Margaret Reid-Miller
Big O & ArrayList 15-121 Fall 2018 Margaret Reid-Miller Today Exam 1: Thursday, Oct 4, 2018 Exam 2 date: Currently Thur. Oct 25 th Move to Tues Oct 30 or Thur Nov 1? (Withdraw deadline Tues Nov 6.) Homework
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 informationWhat is a Computer? Chapter 1-9, 12-13, 18, 20, 23 Review Slides
Chapter 1-9, 12-13, 18, 20, 23 Review Slides What is a Computer? A computer consists of a CPU, memory, hard disk, floppy disk, monitor, printer, and communication devices. CS1: Java Programming Colorado
More informationCOMP 202. More on OO. CONTENTS: static revisited this reference class dependencies method parameters variable scope method overloading
COMP 202 CONTENTS: static revisited this reference class dependencies method parameters variable scope method overloading More on OO COMP 202 Objects 3 1 Static member variables So far: Member variables
More informationNews and information! Review: Java Programs! Feedback after Lecture 2! Dead-lines for the first two lab assignment have been posted.!
True object-oriented programming: Dynamic Objects Reference Variables D0010E Object-Oriented Programming and Design Lecture 3 Static Object-Oriented Programming UML" knows-about Eckel: 30-31, 41-46, 107-111,
More informationContents. I. Classes, Superclasses, and Subclasses. Topic 04 - Inheritance
Contents Topic 04 - Inheritance I. Classes, Superclasses, and Subclasses - Inheritance Hierarchies Controlling Access to Members (public, no modifier, private, protected) Calling constructors of superclass
More informationLists using ArrayList
Lists using ArrayList 1 ArrayList One of the drawbacks of arrays is that they do not make it easy to accommodate collections of arbitrary size. We have to commit ourselves to a fixed size when we introduce
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 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 informationMcGill University School of Computer Science COMP-202A Introduction to Computing 1
McGill University School of Computer Science COMP-202A Introduction to Computing 1 Midterm Exam Thursday, October 26, 2006, 18:00-20:00 (6:00 8:00 PM) Instructors: Mathieu Petitpas, Shah Asaduzzaman, Sherif
More informationCS-140 Fall 2017 Test 1 Version Practice Practie for Sept. 27, Name:
CS-140 Fall 2017 Test 1 Version Practice Practie for Sept. 27, 2017 Name: 1. (10 points) For the following, Check T if the statement is true, the F if the statement is false. (a) T F : In mathematics,
More informationCS-140 Fall 2017 Test 1 Version Practice Practie for Sept. 27, Name:
CS-140 Fall 2017 Test 1 Version Practice Practie for Sept. 27, 2017 Name: 1. (10 points) For the following, Check T if the statement is true, the F if the statement is false. (a) T F : In mathematics,
More informationCS1004: Intro to CS in Java, Spring 2005
CS1004: Intro to CS in Java, Spring 2005 Lecture #13: Java OO cont d. Janak J Parekh janak@cs.columbia.edu Administrivia Homework due next week Problem #2 revisited Constructors, revisited Remember: a
More informationITI Introduction to Computing II
ITI 1121. Introduction to Computing II Marcel Turcotte School of Electrical Engineering and Computer Science Version of January 21, 2013 Abstract Review of object-oriented programming concepts: Implementing
More informationSoftware Design and Analysis for Engineers
Software Design and Analysis for Engineers by Dr. Lesley Shannon Email: lshannon@ensc.sfu.ca Course Website: http://www.ensc.sfu.ca/~lshannon/courses/ensc251 Simon Fraser University Slide Set: 2 Date:
More informationJava Bytecode (binary file)
Java is Compiled Unlike Python, which is an interpreted langauge, Java code is compiled. In Java, a compiler reads in a Java source file (the code that we write), and it translates that code into bytecode.
More informationCHAPTER 7 OBJECTS AND CLASSES
CHAPTER 7 OBJECTS AND CLASSES OBJECTIVES After completing Objects and Classes, you will be able to: Explain the use of classes in Java for representing structured data. Distinguish between objects and
More informationJava Collection Framework
Java Collection Framework Readings Purpose To provide a working knowledge of the Java Collections framework and iterators. Learning Objectives Understand the structure of the Java Collections framework
More information2 What are the differences between constructors and methods?
1 Describe the relationship between an object and its defining class. How do you define a class? How do you declare an object reference variable? How do you create an object? How do you declare and create
More informationJava How to Program, 10/e. Copyright by Pearson Education, Inc. All Rights Reserved.
Java How to Program, 10/e Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved. Data structures Collections of related data items. Discussed in depth in Chapters 16 21. Array objects Data
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 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 informationImperative Languages!
Imperative Languages! Java is an imperative object-oriented language. What is the difference in the organisation of a program in a procedural and an objectoriented language? 30 class BankAccount { private
More informationCOP 3330 Final Exam Review
COP 3330 Final Exam Review I. The Basics (Chapters 2, 5, 6) a. comments b. identifiers, reserved words c. white space d. compilers vs. interpreters e. syntax, semantics f. errors i. syntax ii. run-time
More informationBuilding Java Programs
Building Java Programs Chapter 15 Lecture 15-1: Implementing ArrayIntList reading: 15.1-15.3 Recall: classes and objects class: A program entity that represents: A complete program or module, or A template
More information2. The object-oriented paradigm!
2. The object-oriented paradigm! Plan for this section:! n Look at things we have to be able to do with a programming language! n Look at Java and how it is done there" Note: I will make a lot of use of
More informationIndustrial Programming
Industrial Programming Lecture 4: C# Objects & Classes Industrial Programming 1 What is an Object Central to the object-oriented programming paradigm is the notion of an object. Objects are the nouns a
More informationWhat is an Object. Industrial Programming. What is a Class (cont'd) What is a Class. Lecture 4: C# Objects & Classes
What is an Object Industrial Programming Lecture 4: C# Objects & Classes Central to the object-oriented programming paradigm is the notion of an object. Objects are the nouns a person called John Objects
More informationLecture 3. Lecture
True Object-Oriented programming: Dynamic Objects Static Object-Oriented Programming Reference Variables Eckel: 30-31, 41-46, 107-111, 114-115 Riley: 5.1, 5.2 D0010E Object-Oriented Programming and Design
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 informationContainer Vs. Definition Classes. Container Class
Overview Abstraction Defining new classes Instance variables Constructors Defining methods and passing parameters Method/constructor overloading Encapsulation Visibility modifiers Static members 14 November
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 informationObject Oriented Programming
Object Oriented Programming Objectives To review the concepts and terminology of object-oriented programming To discuss some features of objectoriented design 1-2 Review: Objects In Java and other Object-Oriented
More informationChapter 8 Objects and Classes Dr. Essam Halim Date: Page 1
Assignment (1) Chapter 8 Objects and Classes Dr. Essam Halim Date: 18-3-2014 Page 1 Section 8.2 Defining Classes for Objects 1 represents an entity in the real world that can be distinctly identified.
More informationInf1-OP. Creating Classes. Volker Seeker, adapting earlier version by Perdita Stevens and Ewan Klein. February 26, School of Informatics
Inf1-OP Creating Classes Volker Seeker, adapting earlier version by Perdita Stevens and Ewan Klein School of Informatics February 26, 2018 Creating classes Last time we saw how to use a class: create a
More informationSimple Java Reference
Simple Java Reference This document provides a reference to all the Java syntax used in the Computational Methods course. 1 Compiling and running... 2 2 The main() method... 3 3 Primitive variable types...
More informationChapter 11 Inheritance and Polymorphism. Motivations. Suppose you will define classes to model circles,
Chapter 11 Inheritance and Polymorphism 1 Motivations Suppose you will define classes to model circles, rectangles, and triangles. These classes have many common features. What is the best way to design
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 informationCONTAİNERS COLLECTİONS
CONTAİNERS Some programs create too many objects and deal with them. In such a program, it is not feasible to declare a separate variable to hold reference to each of these objects. The proper way of keeping
More informationObject Oriented Design: Identifying Objects
Object Oriented Design: Identifying Objects Review What did we do in the last lab? What did you learn? What classes did we use? What objects did we use? What is the difference between a class and an object?
More information