Draft project proposal

Size: px
Start display at page:

Download "Draft project proposal"

Transcription

1 Quiz 2 1/30 You can find your grade for Quiz 2 at ep.cgi?year= &term=w&course=4315. You received an with feedback at your EECS account.

2 Draft project proposal 2/30 Please submit a draft of your project proposal (worth 2%) before Wednesday February 21 by transferring the file to red.eecs.yorku.ca and submitting the file using submit 4315 draft <name of file>

3 3/30 Search EECS

4 Source: weknowyourdreams.com 4/30

5 Testing our searches 5/30 How do we test our DFSearch and BFSearch?

6 Testing our searches 5/30 How do we test our DFSearch and BFSearch? Answer Compare them with the corresponding JPF search strategies.

7 Testing our searches 5/30 How do we test our DFSearch and BFSearch? Answer Compare them with the corresponding JPF search strategies. How do we compare search strategies?

8 Testing our searches 5/30 How do we test our DFSearch and BFSearch? Answer Compare them with the corresponding JPF search strategies. How do we compare search strategies? Answer Implement a search listener that records the notifications.

9 Testing our searches 6/30 How do we represent a notification of a search?

10 Testing our searches 6/30 How do we represent a notification of a search? Answer For example, as a String.

11 Testing our searches 6/30 How do we represent a notification of a search? Answer For example, as a String. How do we represents a collection of notifications?

12 Testing our searches 6/30 How do we represent a notification of a search? Answer For example, as a String. How do we represents a collection of notifications? Answer For example, as a List<String> (order in which the notifications happen matters).

13 SearchNotificationRecorder 7/30 public class SearchNotificationRecorder implements SearchListener { private List<String> notifications; public SearchNotificationRecorder() { this.notification = new ArrayList<String>(); } }...

14 SearchNotificationRecorder 8/30 Implement public void searchstarted(search search) {... }

15 SearchNotificationRecorder 8/30 Implement public void searchstarted(search search) {... } Answer public void searchstarted(search search) { this.notifications.add("started in state " + search.getstateid()); }

16 SearchNotificationRecorder 9/30 Implement public void stateadvanced(search search) {... }

17 SearchNotificationRecorder 9/30 Implement public void stateadvanced(search search) {... } Answer public void stateadvanced(search search) { this.recording.add("advanced to state " + search.getstateid()); }

18 SearchNotificationRecorder 10/30 In which method is the list serialized?

19 SearchNotificationRecorder 10/30 In which method is the list serialized? Answer In searchfinished. a a One might be tempted to use Java s finalize method. However, JPF does not ensure that search listeners can be garbage collected at the end of the search and, hence, the finalize method is not invoked.

20 SearchNotificationRecorder 10/30 In which method is the list serialized? Answer In searchfinished. a a One might be tempted to use Java s finalize method. However, JPF does not ensure that search listeners can be garbage collected at the end of the search and, hence, the finalize method is not invoked. What should we do if a notification occurs after searchfinished?

21 SearchNotificationRecorder 10/30 In which method is the list serialized? Answer In searchfinished. a a One might be tempted to use Java s finalize method. However, JPF does not ensure that search listeners can be garbage collected at the end of the search and, hence, the finalize method is not invoked. What should we do if a notification occurs after searchfinished? Answer For example, serialize the list again.

22 Serialize the list 11/30 private void serialize() { try { FileOutputStream output = new FileOutputStream("notifications.ser"); ObjectOutputStream stream = new ObjectOutputStream(output); stream.writeobject(this.notifications); stream.close(); output.close(); } catch (IOException e) { System.out.println("Something went wrong with serializi } }

23 Serialize the list 12/30 We want the user to be able to specify the name of the file to store the serialized list. 1 Add a key and corresponding value for the file name in the configuration file. 2 Extract the file name from the Config object in the constructor. 3 Store the file name in an attribute. 4 Use the attribute in the serialize method.

24 Serialize the list 13/30 Add a key and corresponding value for the file name in the configuration file.... listener=searchnotificationrecorder recorder.file=notifications.ser...

25 Serialize the list 14/30 Extract the file name from the Config object in the constructor. public SearchNotificationRecorder(Config config) {... String filename = config.getstring("recorder.file", "tmp.ser");... }

26 Serialize the list 15/30 Store the file name in an attribute. public class SearchNotificationRecorder implements SearchListener { private String filename; public SearchNotificationRecorder(Config config) {... this.filename = config.getstring("recorder.file", "tmp.ser");... } }...

27 Serialize the list 16/30 Use the attribute in the serialize method. private void serialize() { try { FileOutputStream output = new FileOutputStream(this.fileName); ObjectOutputStream stream = new ObjectOutputStream(output); stream.writeobject(this.recording); stream.close(); output.close(); } catch (IOException e) { System.out.println("Something went wrong with serializi } }

28 Serialize the list 17/30 We call serialize in searchfinished. We serialize the list again if a notification occurs after searchfinished. How do we keep track whether searchfinished has been invoked?

29 Serialize the list 17/30 We call serialize in searchfinished. We serialize the list again if a notification occurs after searchfinished. How do we keep track whether searchfinished has been invoked? Answer Introduce an attribute finished.

30 Serialize the list 18/30 We call serialize in searchfinished. We serialize the list again if a notification occurs after searchfinished. Add attribute finished.

31 Serialize the list 18/30 We call serialize in searchfinished. We serialize the list again if a notification occurs after searchfinished. Add attribute finished. Answer private boolean finished;

32 Serialize the list 19/30 We call serialize in searchfinished. We serialize the list again if a notification occurs after searchfinished. Initialize attribute finished.

33 Serialize the list 19/30 We call serialize in searchfinished. We serialize the list again if a notification occurs after searchfinished. Initialize attribute finished. Answer public SearchNotificationRecorder() {... this.finished = false;... }

34 Serialize the list 20/30 We call serialize in searchfinished. We serialize the list again if a notification occurs after searchfinished. Implement searchfinished.

35 Serialize the list 20/30 We call serialize in searchfinished. We serialize the list again if a notification occurs after searchfinished. Implement searchfinished. Answer public void searchfinished(search search) { this.recording.add("finished"); this.finished = true; this.serialize(); }

36 Serialize the list 21/30 We call serialize in searchfinished. We serialize the list again if a notification occurs after searchfinished. Implement searchstarted.

37 Serialize the list We call serialize in searchfinished. We serialize the list again if a notification occurs after searchfinished. Implement searchstarted. Answer public void searchstarted(search search) { this.recording.add("started"); this.checkfinished(); } private checkfinished() { if (this.finished) { this.serialize(); } } 21/30

38 JPF 22/30 Java bytecode JPF report configuration file configuration: listener=searchnotificationrecorder recorder.file=notifications.ser report: notifications.ser contains a serialized list of notifications

39 Code 23/30 For which (byte)code should we run JPF with the SearchNotificationRecorder listener?

40 Code 23/30 For which (byte)code should we run JPF with the SearchNotificationRecorder listener? Answer Random (byte)code.

41 Code 24/30 Given a finite directed graph G, generate a Java app such that JPF run on the app with the SimpleDot listener produces G.

42 Code 24/30 Given a finite directed graph G, generate a Java app such that JPF run on the app with the SimpleDot listener produces G. Given a finite directed graph generate a Java app such that JPF run on the app with the SimpleDot listener produces G.

43 Code 25/30 1 public class Sample { 2 public static void main(string[] args) { 3 final Random RANDOM = new Random(); 4 boolean done = false; 5 int state = 0; 6 while (!done) { 7 switch (state) { } 29 } 30 } 31 }

44 Code 8 case 0: 9 switch (RANDOM.nextInt(2)) { 10 case 0: 11 state = 1; break; 12 case 1: 13 state = 2; break; 14 }; 15 break; 16 case 1: 17 switch (RANDOM.nextInt(1)) { 18 case 0: 19 state = 2; break; 20 }; 21 break; 22 case 2: 23 switch (RANDOM.nextInt(1)) { 24 case 0: 25 state = 1; break; 26 }; 27 break; 26/30

45 State space 27/30

46 Code 28/30 name: name of the app number: number of states of the model of the app Generate a class with name name such that its model is a random graph with number vertices.

47 Code 29/30 Answer 1 open file name for writing 2 print line for n = 0,..., number 1 print case n: 2 choose successors of state n randomly 3 determine the number of successors 4 if successors = 0 then 1 print done = true; else 1 print switch (RANDOM.nextInt(successors)) { 2 for s = 0,..., successors 1 print case s: 2 print state = i; break, where i is the sth successor 3 print } 4 print line 28 31

48 Shell script 30/30 # Generate code java Generate Sample.java 5 # Compile code javac Sample.java # Run JPF with gov.nasa.jpf.search.heuristic.bfsheuristic java -cp /cs/fac/packages/jpf/jpf-core/build/jpf.jar gov.nasa.jpf.jpf \ +target=sample \ +classpath=. \ +native_classpath=. \ +cg.enumerate_random=true \ +search.class=gov.nasa.jpf.search.heuristic.bfsheuristic \ +listener=searchnotificationrecorder \ +recorder.file=first.ser # Run JPF with BFSearch java -cp /cs/fac/packages/jpf/jpf-core/build/jpf.jar gov.nasa.jpf.jpf \ +target=sample \ +classpath=. \ +native_classpath=. \ +cg.enumerate_random=true \ +search.class=bfsearch \ +listener=searchnotificationrecorder \ +recorder.file=second.ser # Compare recordings java CompareSearchRecordings first.ser second.ser

JPF Report System and Model Classes EECS https://wiki.eecs.yorku.ca/course_archive/ /w/4315/

JPF Report System and Model Classes EECS https://wiki.eecs.yorku.ca/course_archive/ /w/4315/ JPF Report System and Model Classes EECS 4315 https://wiki.eecs.yorku.ca/course_archive/2016-17/w/4315/ Today s Plan XML JPF Report System Implementing a PublisherExtension Parameterizing a Listener Model

More information

Search EECS /57

Search EECS /57 1/57 Search EECS 4315 www.eecs.yorku.ca/course/4315/ Source: weknowyourdreams.com 2/57 Breadth first search 3/57 import gov.nasa.jpf.search.search; public class BFSearch extends Search {... Constructor

More information

Listen EECS /40

Listen EECS /40 1/40 Listen EECS 4315 www.eecs.yorku.ca/course/4315/ 2/40 Event listeners 3/40 JPF uses (event) listeners. target=traversal classpath=. cg.enumerate_random=true listener=gov.nasa.jpf.listener.statespacedot

More information

EECS Mission Critical Systems

EECS Mission Critical Systems EECS 4315 3.0 Mission Critical Systems Midterm 9:00 10:15 on March 1, 2018 Last name: First name: EECS login: Instructions No questions are allowed during the test. If a question is not clear, then write

More information

1.00 Introduction to Computers and Engineering Problem Solving. Quiz 1 March 7, 2003

1.00 Introduction to Computers and Engineering Problem Solving. Quiz 1 March 7, 2003 1.00 Introduction to Computers and Engineering Problem Solving Quiz 1 March 7, 2003 Name: Email Address: TA: Section: You have 90 minutes to complete this exam. For coding questions, you do not need to

More information

Binghamton University. CS-140 Fall Problem Solving. Creating a class from scratch

Binghamton 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 information

I pledge by honor that I will not discuss this exam with anyone until my instructor reviews the exam in the class.

I pledge by honor that I will not discuss this exam with anyone until my instructor reviews the exam in the class. Name: Covers Chapters 1-3 50 mins CSCI 1301 Introduction to Programming Armstrong Atlantic State University Instructor: Dr. Y. Daniel Liang I pledge by honor that I will not discuss this exam with anyone

More information

Lab5. Wooseok Kim

Lab5. Wooseok Kim Lab5 Wooseok Kim wkim3@albany.edu www.cs.albany.edu/~wooseok/201 Question Answer Points 1 A or B 8 2 A 8 3 D 8 4 20 5 for class 10 for main 5 points for output 5 D or E 8 6 B 8 7 1 15 8 D 8 9 C 8 10 B

More information

Introduction to Java

Introduction to Java Introduction to Java Module 1: Getting started, Java Basics 22/01/2010 Prepared by Chris Panayiotou for EPL 233 1 Lab Objectives o Objective: Learn how to write, compile and execute HelloWorld.java Learn

More information

엄현상 (Eom, Hyeonsang) School of Computer Science and Engineering Seoul National University COPYRIGHTS 2017 EOM, HYEONSANG ALL RIGHTS RESERVED

엄현상 (Eom, Hyeonsang) School of Computer Science and Engineering Seoul National University COPYRIGHTS 2017 EOM, HYEONSANG ALL RIGHTS RESERVED 엄현상 (Eom, Hyeonsang) School of Computer Science and Engineering Seoul National University COPYRIGHTS 2017 EOM, HYEONSANG ALL RIGHTS RESERVED Outline - Questionnaire Results - Java Overview - Java Examples

More information

Outline. Overview. Control statements. Classes and methods. history and advantage how to: program, compile and execute 8 data types 3 types of errors

Outline. Overview. Control statements. Classes and methods. history and advantage how to: program, compile and execute 8 data types 3 types of errors Outline Overview history and advantage how to: program, compile and execute 8 data types 3 types of errors Control statements Selection and repetition statements Classes and methods methods... 2 Oak A

More information

(A) 99 ** (B) 100 (C) 101 (D) 100 initial integers plus any additional integers required during program execution

(A) 99 ** (B) 100 (C) 101 (D) 100 initial integers plus any additional integers required during program execution Ch 5 Arrays Multiple Choice Test 01. An array is a ** (A) data structure with one, or more, elements of the same type. (B) data structure with LIFO access. (C) data structure, which allows transfer between

More information

Introduction to Java https://tinyurl.com/y7bvpa9z

Introduction to Java https://tinyurl.com/y7bvpa9z Introduction to Java https://tinyurl.com/y7bvpa9z Eric Newhall - Laurence Meyers Team 2849 Alumni Java Object-Oriented Compiled Garbage-Collected WORA - Write Once, Run Anywhere IDE Integrated Development

More information

Space Exploration EECS /25

Space Exploration EECS /25 1/25 Space Exploration EECS 4315 www.eecs.yorku.ca/course/4315/ Nondeterminism 2/25 Nondeterministic code is code that, even for the same input, can exhibit different behaviours on different runs, as opposed

More information

School of Informatics, University of Edinburgh

School of Informatics, University of Edinburgh CS1Bh Solution Sheet 4 Software Engineering in Java This is a solution set for CS1Bh Question Sheet 4. You should only consult these solutions after attempting the exercises. Notice that the solutions

More information

Following is the general form of a typical decision making structure found in most of the programming languages:

Following is the general form of a typical decision making structure found in most of the programming languages: Decision Making Decision making structures have one or more conditions to be evaluated or tested by the program, along with a statement or statements that are to be executed if the condition is determined

More information

Java Identifiers, Data Types & Variables

Java Identifiers, Data Types & Variables Java Identifiers, Data Types & Variables 1. Java Identifiers: Identifiers are name given to a class, variable or a method. public class TestingShastra { //TestingShastra is an identifier for class char

More information

Programming Language Concepts: Lecture 2

Programming 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 information

Name:... ID:... class A { public A() { System.out.println( "The default constructor of A is invoked"); } }

Name:... ID:... class A { public A() { System.out.println( The default constructor of A is invoked); } } KSU/CCIS/CS CSC 113 Final exam - Fall 12-13 Time allowed: 3:00 Name:... ID:... EXECRICE 1 (15 marks) 1.1 Write the output of the following program. Output (6 Marks): class A public A() System.out.println(

More information

ASSIGNMENT 5 Objects, Files, and More Garage Management

ASSIGNMENT 5 Objects, Files, and More Garage Management ASSIGNMENT 5 Objects, Files, and More Garage Management COMP-202B, Winter 2010, All Sections Due: Wednesday, April 14, 2009 (23:55) You MUST do this assignment individually and, unless otherwise specified,

More information

Introduction to Programming Using Java (98-388)

Introduction 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 information

CS-140 Fall 2017 Test 1 Version Practice Practie for Sept. 27, Name:

CS-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 information

PROGRAMMING FUNDAMENTALS

PROGRAMMING FUNDAMENTALS PROGRAMMING FUNDAMENTALS Q1. Name any two Object Oriented Programming languages? Q2. Why is java called a platform independent language? Q3. Elaborate the java Compilation process. Q4. Why do we write

More information

Lecture 1: Overview of Java

Lecture 1: Overview of Java Lecture 1: Overview of Java What is java? Developed by Sun Microsystems (James Gosling) A general-purpose object-oriented language Based on C/C++ Designed for easy Web/Internet applications Widespread

More information

Baby Steps: Some Simple Programs in C, C++, and Java

Baby Steps: Some Simple Programs in C, C++, and Java Baby Steps: Some Simple Programs in C, C++, and Java Two Goals: To introduce the rudiments of OO vocabulary by showing the easily established conceptual parallels between C, C++, and Java programs. To

More information

Environment Modeling with JavaPathfinder (JPF) Part 3 - Lab

Environment Modeling with JavaPathfinder (JPF) Part 3 - Lab Environment Modeling with JavaPathfinder (JPF) Part 3 - Lab Oksana Tkachuk SGT / NASA Ames Research Center Peter C. Mehlitz SGT / NASA Ames Research Center

More information

Object-Oriented Programming in Java

Object-Oriented Programming in Java Software and Programming I Object-Oriented Programming in Java Roman Kontchakov / Carsten Fuhs Birkbeck, University of London Outline Object-Oriented Programming Public Interface of a Class Instance Variables

More information

Selected Questions from by Nageshwara Rao

Selected 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 information

CN208 Introduction to Computer Programming

CN208 Introduction to Computer Programming CN208 Introduction to Computer Programming Lecture #11 Streams (Continued) Pimarn Apipattanamontre Email: pimarn@pimarn.com 1 The Object Class The Object class is the direct or indirect superclass of every

More information

CSCI 201L Written Exam #1 Fall % of course grade

CSCI 201L Written Exam #1 Fall % of course grade Final Score /15 Name SOLUTION ID Extra Credit /0.5 Lecture Section (circle one): TTh 8:00-9:20 TTh 9:30-10:50 TTh 11:00-12:20 CSCI 201L Written Exam #1 Fall 2017 15% of course grade The exam is one hour

More information

Ryerson University Vers HAL6891A-05 School of Computer Science CPS109 Midterm Test Fall 05 page 1 of 6

Ryerson University Vers HAL6891A-05 School of Computer Science CPS109 Midterm Test Fall 05 page 1 of 6 CPS109 Midterm Test Fall 05 page 1 of 6 Last Name First Name Student Number Circle Your Instructor Your last name here Your first name here Your student number here Ferworn Harley Instructions: (a) There

More information

CSC 1214: Object-Oriented Programming

CSC 1214: Object-Oriented Programming CSC 1214: Object-Oriented Programming J. Kizito Makerere University e-mail: jkizito@cis.mak.ac.ug www: http://serval.ug/~jona materials: http://serval.ug/~jona/materials/csc1214 e-learning environment:

More information

Introduction IS

Introduction IS Introduction IS 313 4.1.2003 Outline Goals of the course Course organization Java command line Object-oriented programming File I/O Business Application Development Business process analysis Systems analysis

More information

(A) 99 (B) 100 (C) 101 (D) 100 initial integers plus any additional integers required during program execution

(A) 99 (B) 100 (C) 101 (D) 100 initial integers plus any additional integers required during program execution Ch 5 Arrays Multiple Choice 01. An array is a (A) (B) (C) (D) data structure with one, or more, elements of the same type. data structure with LIFO access. data structure, which allows transfer between

More information

Getting started with Java

Getting started with Java Getting started with Java by Vlad Costel Ungureanu for Learn Stuff Programming Languages A programming language is a formal constructed language designed to communicate instructions to a machine, particularly

More information

Timing ListOperations

Timing ListOperations Timing ListOperations Michael Brockway November 13, 2017 These slides are to give you a quick start with timing operations in Java and with making sensible use of the command-line. Java on a command-line

More information

Classes and Objects 3/28/2017. How can multiple methods within a Java class read and write the same variable?

Classes and Objects 3/28/2017. How can multiple methods within a Java class read and write the same variable? Peer Instruction 8 Classes and Objects How can multiple methods within a Java class read and write the same variable? A. Allow one method to reference a local variable of the other B. Declare a variable

More information

Java in 21 minutes. Hello world. hello world. exceptions. basic data types. constructors. classes & objects I/O. program structure.

Java in 21 minutes. Hello world. hello world. exceptions. basic data types. constructors. classes & objects I/O. program structure. Java in 21 minutes hello world basic data types classes & objects program structure constructors garbage collection I/O exceptions Strings Hello world import java.io.*; public class hello { public static

More information

CS 101 Fall 2005 Midterm 2 Name: ID:

CS 101 Fall 2005 Midterm 2 Name:  ID: This exam is open text book but closed-notes, closed-calculator, closed-neighbor, etc. Questions are worth different amounts (in particular, the final two questions are worth substantially more than any

More information

Lec 3. Compilers, Debugging, Hello World, and Variables

Lec 3. Compilers, Debugging, Hello World, and Variables Lec 3 Compilers, Debugging, Hello World, and Variables Announcements First book reading due tonight at midnight Complete 80% of all activities to get 100% HW1 due Saturday at midnight Lab hours posted

More information

What is Serialization?

What is Serialization? Serialization 1 Topics What is Serialization? What is preserved when an object is serialized? Transient keyword Process of serialization Process of deserialization Version control Changing the default

More information

B2.52-R3: INTRODUCTION TO OBJECT ORIENTATED PROGRAMMING THROUGH JAVA

B2.52-R3: INTRODUCTION TO OBJECT ORIENTATED PROGRAMMING THROUGH JAVA B2.52-R3: INTRODUCTION TO OBJECT ORIENTATED PROGRAMMING THROUGH JAVA NOTE: 1. There are TWO PARTS in this Module/Paper. PART ONE contains FOUR questions and PART TWO contains FIVE questions. 2. PART ONE

More information

Programming by Delegation

Programming 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 information

Recitation 3 Class and Objects

Recitation 3 Class and Objects 1.00/1.001 Introduction to Computers and Engineering Problem Solving Recitation 3 Class and Objects Spring 2012 1 Scope One method cannot see variables in another; Variables created inside a block: { exist

More information

1.00 Introduction to Computers and Engineering Problem Solving Quiz 1 March 4, 2005

1.00 Introduction to Computers and Engineering Problem Solving Quiz 1 March 4, 2005 1.00 Introduction to Computers and Engineering Problem Solving Quiz 1 March 4, 2005 Name: E-mail Address: TA: Section: You have 80 minutes to complete this exam. For coding questions, you do not need to

More information

About this exam review

About this exam review Final Exam Review About this exam review I ve prepared an outline of the material covered in class May not be totally complete! Exam may ask about things that were covered in class but not in this review

More information

ASSIGNMENT 5 Objects, Files, and a Music Player

ASSIGNMENT 5 Objects, Files, and a Music Player ASSIGNMENT 5 Objects, Files, and a Music Player COMP-202A, Fall 2009, All Sections Due: Thursday, December 3, 2009 (23:55) You MUST do this assignment individually and, unless otherwise specified, you

More information

University of Palestine. Mid Exam Total Grade: 100

University of Palestine. Mid Exam Total Grade: 100 First Question No. of Branches (5) A) Choose the correct answer: 1. If we type: system.out.println( a ); in the main() method, what will be the result? int a=12; //in the global space... void f() { int

More information

JAVA RMI. Remote Method Invocation

JAVA RMI. Remote Method Invocation 1 JAVA RMI Remote Method Invocation 2 Overview Java RMI is a mechanism that allows one to invoke a method on an object that exists in another address space. The other address space could be: On the same

More information

CS-140 Fall 2017 Test 1 Version Practice Practie for Sept. 27, Name:

CS-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 information

The University of Melbourne Department of Computer Science and Software Engineering Software Design Semester 2, 2003

The University of Melbourne Department of Computer Science and Software Engineering Software Design Semester 2, 2003 The University of Melbourne Department of Computer Science and Software Engineering 433-254 Software Design Semester 2, 2003 Answers for Tutorial 7 Week 8 1. What are exceptions and how are they handled

More information

CS251L REVIEW Derek Trumbo UNM

CS251L REVIEW Derek Trumbo UNM CS251L REVIEW 2010.8.25 Derek Trumbo UNM Java Applications Java application defined by a Java class with a main method public static void main(string[] args) args is an array of strings represented the

More information

1. Find the output of following java program. class MainClass { public static void main (String arg[])

1. Find the output of following java program. class MainClass { public static void main (String arg[]) 1. Find the output of following java program. public static void main(string arg[]) int arr[][]=4,3,2,1; int i,j; for(i=1;i>-1;i--) for(j=1;j>-1;j--) System.out.print(arr[i][j]); 1234 The above java program

More information

12% of course grade. CSCI 201L Final - Written Fall /7

12% of course grade. CSCI 201L Final - Written Fall /7 12% of course grade 1. Interfaces and Inheritance Does the following code compile? If so, what is the output? If not, why not? Explain your answer. (1.5%) interface I2 { public void meth1(); interface

More information

Formal Methods for Java

Formal Methods for Java Formal Methods for Java Lecture 26: Properties, Listener and Java Pathfinder Jochen Hoenicke Software Engineering Albert-Ludwigs-University Freiburg Feb 03, 2012 Jochen Hoenicke (Software Engineering)

More information

Variables and Java vs C++

Variables and Java vs C++ Variables and Java vs C++ 1 What can be improved? (variables) public void godirection(string directionname) { boolean wenttoroom = false; for (Direction direction : currentroom.getdirections()) { if (direction.getdirectionname().equalsignorecase(directionname))

More information

MIDTERM REVIEW. midterminformation.htm

MIDTERM REVIEW.   midterminformation.htm MIDTERM REVIEW http://pages.cpsc.ucalgary.ca/~tamj/233/exams/ midterminformation.htm 1 REMINDER Midterm Time: 7:00pm - 8:15pm on Friday, Mar 1, 2013 Location: ST 148 Cover everything up to the last lecture

More information

Vendor: Oracle. Exam Code: 1Z Exam Name: Java SE 8 Programmer. Version: Demo

Vendor: Oracle. Exam Code: 1Z Exam Name: Java SE 8 Programmer. Version: Demo Vendor: Oracle Exam Code: 1Z0-808 Exam Name: Java SE 8 Programmer Version: Demo DEMO QUESTION 1 Which of the following data types will allow the following code snippet to compile? A. long B. double C.

More information

This exam is open book. Each question is worth 3 points.

This exam is open book. Each question is worth 3 points. This exam is open book. Each question is worth 3 points. Page 1 / 15 Page 2 / 15 Page 3 / 12 Page 4 / 18 Page 5 / 15 Page 6 / 9 Page 7 / 12 Page 8 / 6 Total / 100 (maximum is 102) 1. Are you in CS101 or

More information

9/19/2018 Programming Data Structures. Polymorphism And Abstract

9/19/2018 Programming Data Structures. Polymorphism And Abstract 9/19/2018 Programming Data Structures Polymorphism And Abstract 1 In-class assignment: deadline noon!! 2 Overview: 4 main concepts in Object-Oriented Encapsulation in Java is a mechanism of wrapping the

More information

Crash 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. 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 information

Exercise Session Week 8

Exercise Session Week 8 Chair of Software Engineering Java and C# in Depth Carlo A. Furia, Marco Piccioni, Bertrand Meyer Exercise Session Week 8 Quiz 1: What is printed? (Java) class MyTask implements Runnable { public void

More information

CMP-326 Final Exam Fall 2013 Total 120 Points Version 1

CMP-326 Final Exam Fall 2013 Total 120 Points Version 1 Version 1 1. (10 Points) What is the output of the following code? public class Q1_1 { foo(false, false); foo(false, true); foo(true, false); foo(true, true); public static void foo(boolean a, boolean

More information

Computer Programming, I. Laboratory Manual. Final Exam Solution

Computer Programming, I. Laboratory Manual. Final Exam Solution Think Twice Code Once The Islamic University of Gaza Engineering Faculty Department of Computer Engineering Fall 2017 ECOM 2005 Khaleel I. Shaheen Computer Programming, I Laboratory Manual Final Exam Solution

More information

CSC System Development with Java. Exception Handling. Department of Statistics and Computer Science. Budditha Hettige

CSC System Development with Java. Exception Handling. Department of Statistics and Computer Science. Budditha Hettige CSC 308 2.0 System Development with Java Exception Handling Department of Statistics and Computer Science 1 2 Errors Errors can be categorized as several ways; Syntax Errors Logical Errors Runtime Errors

More information

Testing Exceptions with Enforcer

Testing Exceptions with Enforcer Testing Exceptions with Enforcer Cyrille Artho February 23, 2010 National Institute of Advanced Industrial Science and Technology (AIST), Research Center for Information Security (RCIS) Abstract Java library

More information

SUN. Sun Certified Programmer for the Java 2 Platform, Standard Edition 5.0

SUN. Sun Certified Programmer for the Java 2 Platform, Standard Edition 5.0 SUN 310-055 Sun Certified Programmer for the Java 2 Platform, Standard Edition 5.0 Download Full Version : https://killexams.com/pass4sure/exam-detail/310-055 C. Jar C D. Jar D E. Jar E Answer: A QUESTION:

More information

Fall CS 101: Test 2 Name UVA ID. Grading. Page 1 / 4. Page3 / 20. Page 4 / 13. Page 5 / 10. Page 6 / 26. Page 7 / 17.

Fall CS 101: Test 2 Name UVA  ID. Grading. Page 1 / 4. Page3 / 20. Page 4 / 13. Page 5 / 10. Page 6 / 26. Page 7 / 17. Grading Page 1 / 4 Page3 / 20 Page 4 / 13 Page 5 / 10 Page 6 / 26 Page 7 / 17 Page 8 / 10 Total / 100 1. (4 points) What is your course section? CS 101 CS 101E Pledged Page 1 of 8 Pledged The following

More information

COE318 Lecture Notes Week 10 (Nov 7, 2011)

COE318 Lecture Notes Week 10 (Nov 7, 2011) COE318 Software Systems Lecture Notes: Week 10 1 of 5 COE318 Lecture Notes Week 10 (Nov 7, 2011) Topics More about exceptions References Head First Java: Chapter 11 (Risky Behavior) The Java Tutorial:

More information

You should see something like this, called the prompt :

You should see something like this, called the prompt : CSE 1030 Lab 1 Basic Use of the Command Line PLEASE NOTE this lab will not be graded and does not count towards your final grade. However, all of these techniques are considered testable in a labtest.

More information

Programming Language Concepts: Lecture 2

Programming 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 information

Oracle 1Z Java SE 8 Programmer I. Download Full Version :

Oracle 1Z Java SE 8 Programmer I. Download Full Version : Oracle 1Z0-808 Java SE 8 Programmer I Download Full Version : https://killexams.com/pass4sure/exam-detail/1z0-808 QUESTION: 121 And the commands: Javac Jump.java Java Jump crazy elephant is always What

More information

Lecture 2. COMP1406/1006 (the Java course) Fall M. Jason Hinek Carleton University

Lecture 2. COMP1406/1006 (the Java course) Fall M. Jason Hinek Carleton University Lecture 2 COMP1406/1006 (the Java course) Fall 2013 M. Jason Hinek Carleton University today s agenda a quick look back (last Thursday) assignment 0 is posted and is due this Friday at 2pm Java compiling

More information

Chair of Software Engineering. Java and C# in Depth. Prof. Dr. Bertrand Meyer. Exercise Session 7. Nadia Polikarpova

Chair of Software Engineering. Java and C# in Depth. Prof. Dr. Bertrand Meyer. Exercise Session 7. Nadia Polikarpova Chair of Software Engineering Java and C# in Depth Prof. Dr. Bertrand Meyer Exercise Session 7 Nadia Polikarpova Quiz 1: Does it compile? (Java) public class MyException extends Exception { Checked exception...

More information

16-Dec-10. Consider the following method:

16-Dec-10. Consider the following method: Boaz Kantor Introduction to Computer Science IDC Herzliya Exception is a class. Java comes with many, we can write our own. The Exception objects, along with some Java-specific structures, allow us to

More information

Basic Java IO Decorator pattern Advanced Java IO. Java IO - part 2 BIU OOP. BIU OOP Java IO - part 2

Basic Java IO Decorator pattern Advanced Java IO. Java IO - part 2 BIU OOP. BIU OOP Java IO - part 2 Java IO - part 2 BIU OOP Table of contents 1 Basic Java IO What do we know so far? What s next? 2 Example Overview General structure 3 Stream Decorators Serialization What do we know so far? What s next?

More information

Java How to Program, 10/e. Copyright by Pearson Education, Inc. All Rights Reserved.

Java 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 information

Outline. Parts 1 to 3 introduce and sketch out the ideas of OOP. Part 5 deals with these ideas in closer detail.

Outline. Parts 1 to 3 introduce and sketch out the ideas of OOP. Part 5 deals with these ideas in closer detail. OOP in Java 1 Outline 1. Getting started, primitive data types and control structures 2. Classes and objects 3. Extending classes 4. Using some standard packages 5. OOP revisited Parts 1 to 3 introduce

More information

Exercise Session Week 8

Exercise Session Week 8 Chair of Software Engineering Java and C# in Depth Carlo A. Furia, Marco Piccioni, Bertrand Meyer Exercise Session Week 8 Java 8 release date Was early September 2013 Currently moved to March 2014 http://openjdk.java.net/projects/jdk8/milestones

More information

School of Informatics, University of Edinburgh

School of Informatics, University of Edinburgh CS1Ah Lecture Note 29 Streams and Exceptions We saw back in Lecture Note 9 how to design and implement our own Java classes. An object such as a Student4 object contains related fields such as surname,

More information

ASSIGNMENT 5 Data Structures, Files, Exceptions, and To-Do Lists

ASSIGNMENT 5 Data Structures, Files, Exceptions, and To-Do Lists ASSIGNMENT 5 Data Structures, Files, Exceptions, and To-Do Lists COMP-202B, Winter 2009, All Sections Due: Tuesday, April 14, 2009 (23:55) You MUST do this assignment individually and, unless otherwise

More information

CS 455 Midterm Exam 2 Fall 2016 [Bono] November 8, 2016

CS 455 Midterm Exam 2 Fall 2016 [Bono] November 8, 2016 Name: USC NetID (e.g., ttrojan): CS 455 Midterm Exam 2 Fall 2016 [Bono] November 8, 2016 There are 7 problems on the exam, with 50 points total available. There are 8 pages to the exam (4 pages double-sided),

More information

CS/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/ 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

1 Shyam sir JAVA Notes

1 Shyam sir JAVA Notes 1 Shyam sir JAVA Notes 1. What is the most important feature of Java? Java is a platform independent language. 2. What do you mean by platform independence? Platform independence means that we can write

More information

0.8.0 SimpleConsumer Example

0.8.0 SimpleConsumer Example 0.8.0 SimpleConsumer Example Using SimpleConsumer Why use SimpleConsumer? The main reason to use a SimpleConsumer implementation is you want greater control over partition consumption than Consumer Groups

More information

PASS4TEST IT 인증시험덤프전문사이트

PASS4TEST IT 인증시험덤프전문사이트 PASS4TEST IT 인증시험덤프전문사이트 http://www.pass4test.net 일년동안무료업데이트 Exam : 1z0-809 Title : Java SE 8 Programmer II Vendor : Oracle Version : DEMO Get Latest & Valid 1z0-809 Exam's Question and Answers 1 from

More information

Last Name: Circle One: OCW Non-OCW

Last Name: Circle One: OCW Non-OCW First Name: AITI 2004: Exam 1 June 30, 2004 Last Name: Circle One: OCW Non-OCW Read Instructions Carefully! This is a 3 hour closed book exam. No calculators are allowed. Please write clearly if we cannot

More information

Administration. Exceptions. Leftovers. Agenda. When Things Go Wrong. Handling Errors. CS 99 Summer 2000 Michael Clarkson Lecture 11

Administration. Exceptions. Leftovers. Agenda. When Things Go Wrong. Handling Errors. CS 99 Summer 2000 Michael Clarkson Lecture 11 Administration Exceptions CS 99 Summer 2000 Michael Clarkson Lecture 11 Lab 10 due tomorrow No lab tomorrow Work on final projects Remaining office hours Rick: today 2-3 Michael: Thursday 10-noon, Monday

More information

AP CS Unit 7: Interfaces Exercises 1. Select the TRUE statement(s).

AP CS Unit 7: Interfaces Exercises 1. Select the TRUE statement(s). AP CS Unit 7: Interfaces Exercises 1. Select the TRUE statement(s). a) This code will not compile because a method cannot specify an interface as a parameter. public class Testing { public static void

More information

i219 Software Design Methodology 12. Case study 1 Dining philosopher problem Kazuhiro Ogata (JAIST) Outline of lecture

i219 Software Design Methodology 12. Case study 1 Dining philosopher problem Kazuhiro Ogata (JAIST) Outline of lecture i219 Software Design Methodology 12. Case study 1 Dining philosopher problem Kazuhiro Ogata (JIST) Outline of lecture 2 Dining philosopher problem (DPP) Dining Room in UML & Java Chopstick in UML & Java

More information

CS 231 Data Structures and Algorithms, Fall 2016

CS 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 information

CS 200 File Input and Output Jim Williams, PhD

CS 200 File Input and Output Jim Williams, PhD CS 200 File Input and Output Jim Williams, PhD This Week 1. WaTor Change Log 2. Monday Appts - may be interrupted. 3. Optional Lab: Create a Personal Webpage a. demonstrate to TA for same credit as other

More information

Index. Course Outline. Grading Policy. Lab Time Distribution. Important Instructions

Index. Course Outline. Grading Policy. Lab Time Distribution. Important Instructions Index Course Outline Grading Policy Lab Time Distribution Important Instructions 2 Course Outline Week Topics 1 - History and Evolution of Java - Overview of Java 2 - Datatypes - Variables 3 - Arrays 4

More information

THE CONCEPT OF OBJECT

THE CONCEPT OF OBJECT THE CONCEPT OF OBJECT An object may be defined as a service center equipped with a visible part (interface) and an hidden part Operation A Operation B Operation C Service center Hidden part Visible part

More information

CS Week 11. Jim Williams, PhD

CS Week 11. Jim Williams, PhD CS 200 - Week 11 Jim Williams, PhD This Week 1. Exam 2 - Thursday 2. Team Lab: Exceptions, Paths, Command Line 3. Review: Muddiest Point 4. Lecture: File Input and Output Objectives 1. Describe a text

More information

Phase 2: Due 05/02/18 The Gui now stores and displays a graph in response to user mouse clicks on the screen.

Phase 2: Due 05/02/18 The Gui now stores and displays a graph in response to user mouse clicks on the screen. Spring 2018 CS313 Project Implementation of a GUI to work with Graphs. Reminder: This is a pass/fail assignment, you must pass it to pass the course. You do not have to do a perfect job to pass the assignment,

More information

Goals. Java - An Introduction. Java is Compiled and Interpreted. Architecture Neutral & Portable. Compiled Languages. Introduction to Java

Goals. Java - An Introduction. Java is Compiled and Interpreted. Architecture Neutral & Portable. Compiled Languages. Introduction to Java Goals Understand the basics of Java. Introduction to Java Write simple Java Programs. 1 2 Java - An Introduction Java is Compiled and Interpreted Java - The programming language from Sun Microsystems Programmer

More information

C212 Early Evaluation Exam Mon Feb Name: Please provide brief (common sense) justifications with your answers below.

C212 Early Evaluation Exam Mon Feb Name: Please provide brief (common sense) justifications with your answers below. C212 Early Evaluation Exam Mon Feb 10 2014 Name: Please provide brief (common sense) justifications with your answers below. 1. What is the type (and value) of this expression: 5 * (7 + 4 / 2) 2. What

More information

15CS45 : OBJECT ORIENTED CONCEPTS

15CS45 : OBJECT ORIENTED CONCEPTS 15CS45 : OBJECT ORIENTED CONCEPTS QUESTION BANK: What do you know about Java? What are the supported platforms by Java Programming Language? List any five features of Java? Why is Java Architectural Neutral?

More information

CSS 533 Program 3: Mobile-Agent Execution Platform Professor: Munehiro Fukuda Due date: see the syllabus

CSS 533 Program 3: Mobile-Agent Execution Platform Professor: Munehiro Fukuda Due date: see the syllabus CSS 533 Program 3: Mobile-Agent Execution Platform Professor: Munehiro Fukuda Due date: see the syllabus 1. Purpose This assignment implements a mobile-agent execution platform that is in general facilitated

More information