DM550 Introduction to Programming part 2. Jan Baumbach.
|
|
- Noreen Alison Lawrence
- 6 years ago
- Views:
Transcription
1 DM550 Introduction to Programming part 2 Jan Baumbach jan.baumbach@imada.sdu.dk
2 CALLING & DEFINING FUNCTIONS 2
3 Functions and Methods all functions in java are defined inside a class BUT static functions are not associated with one object a static function belongs to the class it is defined in functions of a class called by <class>.<function>(<args>) Example: Math.pow(2, 6) all other (i.e. non-static) functions belong to an object in other words, all non-static functions are methods! functions of an object called by <object>.<function>(<args>) Example: String s1 = "Hello!"; System.out.println(s1.toUpperCase()); 3
4 Calling Functions & Returning Values function calls are expressions exactly like in Python Example: int x = sc.nextint(); argument passing works exactly like in Python Example: System.out.println(Math.log(Math.E)) the return statement works exactly like in Python Example: return Math.sqrt(a*a+b*b); 4
5 Function Definitions functions are defined using the following grammar rule: <func.def> => static <type> <function>(, <type i > <arg i >, ) { <instr 1 >; ; <instr k >; Example (static function): public class Pythagoras { static double pythagoras(double a, double b) { return Math.sqrt(a*a+b*b); public static void main(string[] args) { System.out.println(pythagoras(3, 4)); 5
6 Method Definitions methods are defined using the following grammar rule: <meth.def> => <type> <function>(, <type i > <arg i >, ) { <instr 1 >; ; <instr k >; Example (method): public class Pythagoras { double a, b; Pythagoras(double a, double b) { this.a = a; this.b = b; double compute() { return Math.sqrt(this.a*this.a+this.b*this.b); public static void main(string[] args) { Pythagoras pyt = new Pythagoras(3, 4); System.out.println(pyt.compute()); constructor corresponds to init (self, a, b) 6
7 SIMPLE ITERATION 7
8 Iterating with While Loops iteration = repetition of code blocks while statement: <while-loop> => while (<cond>) { <instr 1 >; <instr 2 >; <instr 3 >; Example: static void countdown(int n) { while (n > 0) { false true n == System.out.println(n); n--; System.out.println("Ka-Boom!"); 8
9 Breaking a Loop sometimes you want to force termination Example: while (true) { System.out.println("enter a number (or 'exit'):\n"); String num = sc.nextline(); if (num.equals("exit")) { break; int n = Integer.parseInt(num); System.out.println("Square of "+n+" is: "+n*n); System.out.println("Thanks a lot!"); 9
10 Fibonacci numbers: 1. Start with 0 and 1 Fibonacci code 2. The next one is the sum of the two previous ones. f(x n ) = x n-1 + x n-2 Example: int max = 1000; int x=0; int y=1; while (true) { f=x+y; System.out.println(f); x=y; y=f; if ((x+y) >= max) { break; 10
11 Fibonacci numbers: 1. Start with 0 and 1 Fibonacci code 2. The next one is the sum of the two previous ones. f(x n ) = x n-1 + x n-2 Example: int max = 1000; int x=0; int y=1; do { f=x+y; System.out.println(f); x=y; y=f; while ((x+y) <max); 11
12 Iterating with For Loops (standard) for loops very different from Python grammar rule: <for-loop> => for (<init>; <cond>; <update>) { <instr 1 >; ; <instr k >; Execution: 1. initialize counter variable using <init> 2. check whether condition <cond> holds 3. if not, END the for loop 4. if it holds, first execute <instr 1 > <instr k > 5. then execute <update> 6. jump to Step 2 12
13 Iterating with For Loops (standard) for loops very different from Python grammar rule: <for-loop> => for (<init>; <cond>; <update>) { <instr 1 >; ; <instr k >; Example: int n = 10; while (n > 0) { System.out.println(n); n--; System.out.println("Ka-Boom!"); 13
14 Iterating with For Loops (standard) for loops very different from Python grammar rule: <for-loop> => for (<init>; <cond>; <update>) { <instr 1 >; ; <instr k >; Example: int n = 10; while (n > 0) { for (int n = 10; n > 0; n--) { System.out.println(n); n--; System.out.println("Boo!"); 14
15 Iterating with For Loops (standard) for loops very different from Python grammar rule: <for-loop> => for (<init>; <cond>; <update>) { <instr 1 >; ; <instr k >; Example: int n = 10; while (n > 0) { for (int n = 10; n > 0; n--) { System.out.println(n); System.out.println(n); n--; System.out.println("Boo!"); System.out.println("Boo!"); 15
16 CONDITIONAL EXECUTION 16
17 Conditional Execution the if-then statement executes code only if a condition holds grammar rule: <if-then> => if (<cond>) { <instr 1 >; ; <instr k >; Example: if (x <= 42) { System.out.println("not more than the answer"); if (x > 42) { System.out.println("sorry - too much!"); 17
18 Control Flow Graph Example: if (x <= 42) { System.out.println("A"); if (x > 42) { System.out.println("B"); x <= 42 false x > 42 false true true System.out.println("A"); System.out.println("B"); 18
19 Alternative Execution the if-then-else statement executes one of two code blocks grammar rule: <if-then-else> => if (<cond>) { <instr 1 >; ; <instr k >; else { <instr 1 >; ; <instr k >; Example: if (x <= 42) { System.out.println("not more than the answer"); else { System.out.println("sorry - too much!"); 19
20 Control Flow Graph Example: if (x <= 42) { System.out.println("A"); else { System.out.println("B"); x <= 42 false true print "A" print "B" 20
21 Chained Conditionals alternative execution a special case of chained conditionals grammar rules: <if-chained> => if (<cond 1 >) { <instr 1,1 >; ; <instr k1,1 >; else if (<cond 2 >) { else { <instr 1,m >; ; <instr km,m >; Example: if (x > 0) { System.out.println("positive"); else if (x < 0) { System.out.println("negative"); else { System.out.println("zero"); 21
22 Control Flow Diagram Example: if (x > 0) { System.out.println("A"); else if (x < 0) { System.out.println("B"); else { System.out.println("C"); false x > 0 x < 0 true true false print "positive" print "negative" print "zero" 22
23 Switch Statement for int and char, special statement for multiple conditions grammar rules: <switch> => switch (<expr>) { case <const 1 >: <instr 1,1 >; ; <instr k1,1 >; break; case <const 2 >: default: <instr 1,m >; ; <instr km,m >; 23
24 Switch Statement Example: int n = sc.nextint(); switch (n) { case 0: System.out.println("zero"); break; case 1: case 2: System.out.println("smaller than three"); default: System.out.println("negative or larger than two"); 24
25 Nested Conditionals conditionals can be nested below conditionals: if (x > 0) { if (y > 0) { System.out.println("Quadrant 1"); else if (y < 0) { System.out.println("Quadrant 4"); else { System.out.println("positive x-axis"); else if (x < 0) { if (y > 0) { System.out.println("Quadrant 2"); else if (y < 0) { System.out.println("Quadrant 3"); else { System.out.println("negative x-axis"); else { System.out.println("y-Axis"); 25
26 TYPE CASTS & EXCEPTION HANDLING 26
27 Type Conversion Java uses type casts for converting values (int) x: converts x into an integer Example 1: ((int) 127) + 1 == 128 Example 2: (int) == -3 (double) x: converts x into a float Example 1: (double) 42 == 42.0 Example 2: (double) "42" results in Compilation Error (String) x: views x as a string Example: Object o = "Hello World! ; String s = (String) o; 27
28 Catching Exceptions type conversion operations are error-prone Example: Object o = new Integer(23); Strings s = (String) o; good idea to avoid type casts sometimes necessary, e.g. when implementing equals method use try-catch statement to handle error situations Example 1: String s; try { s = (String) o; catch (ClassCastException e) { s = "ERROR"; 28
29 Catching Exceptions use try-catch statement to handle error situations Example 2: try { double x; x = Double.parseDouble(str); System.out.println("The number is " + x); catch (NumberFormatException e) { System.out.println("The number sucks."); 29
30 Arrays array = built-in, mutable list of fixed-length type declared by adding [] to base type Example: int[] speeddial; creation using same new as for objects size declared when creating array Example: speeddial = new int[20]; also possible to fill array using { while creating it then length determined by number of filled elements Example: speeddial = { , ; 30
31 Arrays array = built-in, mutable list of fixed-length access using [index] notation (both read and write, 0-based) size available as attribute.length Example: int[] speeddial = { , ; for (int i = 0; i < speeddial.length; i++) { System.out.println(speedDial[i]); speeddial[i] += ; for (int i = 0; i < speeddial.length; i++) { System.out.println(speedDial[i]); 31
32 Command Line Arguments command line arguments given as array of strings Example: public class PrintCommandLine { public static void main(string[] args) { int len = args.length; System.out.println("got "+len+" arguments"); for (int i = 0; i < len; i++) { System.out.println("args["+i+"] = "+args[i]); 32
33 Reading from Files done the same way as reading from the user i.e., using the class java.util.scanner instead of System.in we use an object of type java.io.file Example (reading a file given as first argument): import java.util.scanner; import java.io.file; public class OpenFile { public static void main(string[] args) { File infile = new File(args[0]); Scanner sc = new Scanner(infile); while (sc.hasnext()) { System.out.println(sc.nextLine()); 33
34 Reading from Files Example (reading a file given as first argument): import java.util.scanner; import java.io.*; public class OpenFile { public static void main(string[] args) { File infile = new File(args[0]); try { Scanner sc = new Scanner(infile); while (sc.hasnext()) { System.out.println(sc.nextLine()); catch (FileNotFoundException e) { System.out.println("Did not find your strange "+args[0]); 34
35 Writing to Files done the same way as writing to the screen i.e., using the class java.io.printstream System.out is a predefined java.io.printstream object Example (copying a file line by line): import java.io.*; import java.util.scanner; public class CopyFile { public static void main(string[] args) throws new FileNotFoundException { Scanner sc = new Scanner(new File(args[0])); PrintStream target = new PrintStream(new File(args[1])); while (sc.hasnext()) { target.println(sc.nextline()); target.close(); 35
36 Throwing Exceptions Java uses throw (comparable to raise in Python) Example (method that receives unacceptabe input): static double power(double a, int b) { if (b < 0) { String msg = "natural number expected"; throw new IllegalArgumentException(msg); result = 1; for (; b > 0; b--) { result *= a; return result; 36
37 OBJECT ORIENTATION 37
38 Objects, Classes, and Instances class = description of a class of objects Example: a Car is defined by model, year, and colour object = concrete instance of a class Example: a silver Audi A4 from 2013 is an instance of Car Example (Car as Java class): public class Car { public String model, colour; public int year; public Car(String model, int year, String colour) { this.model = model; this.year = year; this.colour = colour; 38
39 Attributes attributes belonging to each object are member variables they are declared by giving their types inside the class Example: public class Car { public String model, colour; public int year; visibility can be public, protected, package or private for now only public or private: public = usable (read and write) for everyone private = usable (read and write) for the class 39
40 Getters and Setters getter = return value of a private attribute setter = change value of a private attribute Example: public class Car { private String model; public String getmodel() { return this.model; public void setmodel(string model) { this.model = model; 40
41 Getters and Setters very useful to abstract from internal representation Example: public class Car { // built after 1920 private byte year; public int getyear() { return this.year >= 20? this.year : this.year ; public void setyear(int year) { this.year = (byte) year % 100; 41
42 Static Attributes attributes belonging to the class are static attributes declaration by static and giving their types inside the class Example: public class Car { private static int number = 0; public Car(String model, int year, String colour) { this.model = model; this.year = year; this.colour = colour; Car.number++; public int getnumberofcars() { return number; 42
43 Initializing Global and Local Variables local variable = variable declared in a block global variable = member variable or static attribute all local and all global variables can be initialized Example: public class Car { private static int number = 0; public String model = "Skoda Fabia"; public Car(String model, int year, String colour) { boolean[] wheelok = new boolean[4]; 43
44 Constructors objects are created by using new Example: Car mine = new Car("VW Passat", 2003, "black"); Execution: Java Runtime Environment reserves memory for object constructor with matching parameter list is called constructor is a special method with no (given) return type Example: public class Car { public Car(String model, int year, String colour) { this.model = model; this.year = year; this.colour = colour; 44
45 Constructors more than one constructor possible (different parameter lists) constructors can use each other in first line using this( ); Example: public class Car { public Car(String model, int year, String colour) { this.model = model; this.year = year; this.colour = colour; public Car(String model, byte year, String colour) { this(model, year > 20? 1900+year : 2000+year, colour); 45
46 Overloading overloading = more than one function of the same name allowed as long as parameter lists are different different return types is not sufficient! Example: public class Car { public void setcolour(string colour) { this.colour = colour; public void setcolour(string colour, boolean dark) { if (dark) { colour = "dark"+colour; this.colour = colour; 46
47 Printing Objects printing objects does not give the desired result Example: System.out.println(new Car("Audi A1", 2011, "red")); method public String tostring() (like str in Python) Example: public class Car { public String tostring() { return this.colour+" "+this.model+" from "+this.year; 47
48 ADVANCED OBJECT-ORIENTATION 48
49 Object-Oriented Design classes often do not exist in isolation from each other a vehicle database might have classes for cars and trucks in such situation, having a common superclass useful Example: public class Vehicle { public String model; public int year; public Vehicle(String model, int year) { this.model = model; this.year = year; public String tostring() {return this.model+" from "+this.year; 49
50 Extending Classes Car and Truck then extend the Vehicle class Example: public class Car extends Vehicle { public String colour; public Car(string model, int year, String colour) { this.colour = colour; // this makes NO SENSE public String tostring() { return this.colour; public class Truck extends Vehicle { public double maxload; 50
51 Class Hierarchy class hierarchies are parts of class diagrams for our example we have: is-a Object is-a Vehicle is-a Car Truck 51
52 Abstract Classes often, superclasses should not have instances in our example, we want no objects of class Vehicle can be achieved by declaring the class to be abstract Example: public abstract class Vehicle { public String model; public int year; public Vehicle(string model, int year) { this.model = model; this.year = year; public String tostring() {return this.model+" from "+this.year; 52
53 Accessing Attributes attributes of superclasses can be accessed using this Example: public class Car extends Vehicle { public String colour; public Car(string model, int year, String colour) { this.model = model; this.year = year; this.colour = colour; public String tostring() { return this.colour+" "+this.model+" from "+this.year; 53
54 Accessing Superclass methods of superclasses can be accessed using super Example: public class Car extends Vehicle { public String colour; public Car(string model, int year, String colour) { this.model = model; this.year = year; this.colour = colour; public String tostring() { return this.colour+" "+super.tostring(); 54
55 Superclass Constructors constructors of superclasses can be accessed using super Example: public class Car extends Vehicle { public String colour; public Car(string model, int year, String colour) { super(model, year); this.colour = colour; public String tostring() { return this.colour+" "+super.tostring(); 55
56 Abstract Methods abstract method = method declared but not implemented useful in abstract classes (and later interfaces) Example: public abstract class Vehicle { public String model; public int year; public Vehicle(string model, int year) { this.model = model; this.year = year; public String tostring() {return this.model+" from "+this.year; public abstract computeresalevalue(); 56
57 Interfaces different superclasses could have different implementations to avoid conflicts, classes can only extend one (abstract) class interfaces = abstract classes without implementation only contain public abstract methods (abstract left out) no conflict possible with different interfaces Example: public interface HasValueAddedTax { public double getvalueaddedtax(double percentage); public class Car implements HasValueAddedTax { public double getvalueaddedtax(double p) { return 42000; 57
58 Interfaces Example: public interface HasValueAddedTax { public double getvalueaddedtax(double percentage); public interface Destructible { public void destroy(); public class Car implements HasValueAddedTax, Destructible { public double getvalueaddedtax(double p) { return 42000; public void destroy() { this.model = "BROKEN"; 58
59 Interface and Class Hierarchy interfaces outside normal class hierarchy HasValueAddedTax Destructible Vehicle Car Truck 59
DM503 Programming B. Peter Schneider-Kamp.
DM503 Programming B Peter Schneider-Kamp petersk@imada.sdu.dk! http://imada.sdu.dk/~petersk/dm503/! TYPE CASTS & FILES & EXCEPTION HANDLING 2 Type Conversion Java uses type casts for converting values
More informationDM537 Object-Oriented Programming. Peter Schneider-Kamp.
DM537 Object-Oriented Programming Peter Schneider-Kamp petersk@imada.sdu.dk! http://imada.sdu.dk/~petersk/dm537/! TYPE CASTS & FILES & EXCEPTION HANDLING 2 Type Conversion Java uses type casts for converting
More informationDM550 Introduction to Programming part 2. Jan Baumbach.
DM550 Introduction to Programming part 2 Jan Baumbach jan.baumbach@imada.sdu.dk http://www.baumbachlab.net VARIABLES, EXPRESSIONS & STATEMENTS 2 Values and Types Values = basic data objects 42 23.0 "Hello!"
More informationDM537 Object-Oriented Programming. Peter Schneider-Kamp.
DM537 Object-Oriented Programming Peter Schneider-Kamp petersk@imada.sdu.dk! http://imada.sdu.dk/~petersk/dm537/! VARIABLES, EXPRESSIONS & STATEMENTS 2 Values and Types Values = basic data objects 42 23.0
More informationDM550 / DM857 Introduction to Programming. Peter Schneider-Kamp
DM550 / DM857 Introduction to Programming Peter Schneider-Kamp petersk@imada.sdu.dk http://imada.sdu.dk/~petersk/dm550/ http://imada.sdu.dk/~petersk/dm857/ CALLING & DEFINING FUNCTIONS 2 Functions and
More informationDM503 Programming B. Peter Schneider-Kamp.
DM503 Programming B Peter Schneider-Kamp petersk@imada.sdu.dk! http://imada.sdu.dk/~petersk/dm503/! VARIABLES, EXPRESSIONS & STATEMENTS 2 Values and Types Values = basic data objects 42 23.0 "Hello!" Types
More informationDM550 Introduction to Programming part 2. Jan Baumbach.
DM550 Introduction to Programming part 2 Jan Baumbach jan.baumbach@imada.sdu.dk http://www.baumbachlab.net COURSE ORGANIZATION 2 Course Elements Lectures: 10 lectures Find schedule and class rooms in online
More informationDM550 / DM857 Introduction to Programming. Peter Schneider-Kamp
DM550 / DM857 Introduction to Programming Peter Schneider-Kamp petersk@imada.sdu.dk http://imada.sdu.dk/~petersk/dm550/ http://imada.sdu.dk/~petersk/dm857/ OBJECT-ORIENTED PROGRAMMING IN JAVA 2 Programming
More informationDM503 Programming B. Peter Schneider-Kamp.
DM503 Programming B Peter Schneider-Kamp petersk@imada.sdu.dk! http://imada.sdu.dk/~petersk/dm503/! ADVANCED OBJECT-ORIENTATION 2 Object-Oriented Design classes often do not exist in isolation from each
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 informationSequence structure. The computer executes java statements one after the other in the order in which they are written. Total = total +grade;
Control Statements Control Statements All programs could be written in terms of only one of three control structures: Sequence Structure Selection Structure Repetition Structure Sequence structure The
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 informationCSC Java Programming, Fall Java Data Types and Control Constructs
CSC 243 - Java Programming, Fall 2016 Java Data Types and Control Constructs Java Types In general, a type is collection of possible values Main categories of Java types: Primitive/built-in Object/Reference
More informationNumbers Implicit This Static Methods and Fields Packages Access Modifiers Main Overloading Exceptions Etc.
Numbers Implicit This Static Methods and Fields Packages Access Modifiers Main Overloading Exceptions Etc. 1 Integers Java s number system: byte an integer between -128 and 127 short an integer between
More informationJAVA PROGRAMMING LAB. ABSTRACT In this Lab you will learn to define and invoke void and return java methods
Islamic University of Gaza Faculty of Engineering Computer Engineering Dept. Computer Programming Lab (ECOM 2114) ABSTRACT In this Lab you will learn to define and invoke void and return java methods JAVA
More informationF1 A Java program. Ch 1 in PPIJ. Introduction to the course. The computer and its workings The algorithm concept
F1 A Java program Ch 1 in PPIJ Introduction to the course The computer and its workings The algorithm concept The structure of a Java program Classes and methods Variables Program statements Comments Naming
More informationJava for Non Majors Spring 2018
Java for Non Majors Spring 2018 Final Study Guide The test consists of 1. Multiple choice questions - 15 x 2 = 30 points 2. Given code, find the output - 3 x 5 = 15 points 3. Short answer questions - 3
More informationLoops. CSE 114, Computer Science 1 Stony Brook University
Loops CSE 114, Computer Science 1 Stony Brook University http://www.cs.stonybrook.edu/~cse114 1 Motivation Suppose that you need to print a string (e.g., "Welcome to Java!") a user-defined times N: N?
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 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 informationIntroduction to Computer Science Unit 2. Notes
Introduction to Computer Science Unit 2. Notes Name: Objectives: By the completion of this packet, students should be able to describe the difference between.java and.class files and the JVM. create and
More informationThe Scanner class reads data entered by the user. Methods: COSC Dr. Ramon Lawrence. Page 3. COSC Dr. Ramon Lawrence A) A = 6, B = 3
COSC 123 Computer Creativity Course Review Dr. Ramon Lawrence University of British Columbia Okanagan ramon.lawrence@ubc.ca Reading Data from the User The Scanner Class The Scanner class reads data entered
More informationTHE 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 informationProgramming II (CS300)
1 Programming II (CS300) Chapter 04: Exception Handling MOUNA KACEM mouna@cs.wisc.edu Fall 2018 Creating Classes 2 Introduction Exception Handling Common Exceptions Exceptions with Methods Assertions and
More informationCOSC 123 Computer Creativity. I/O Streams and Exceptions. Dr. Ramon Lawrence University of British Columbia Okanagan
COSC 123 Computer Creativity I/O Streams and Exceptions Dr. Ramon Lawrence University of British Columbia Okanagan ramon.lawrence@ubc.ca Objectives Explain the purpose of exceptions. Examine the try-catch-finally
More informationCSC 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 informationProgramming II (CS300)
1 Programming II (CS300) Chapter 04: Exception Handling MOUNA KACEM mouna@cs.wisc.edu Spring 2018 Creating Classes 2 Introduction Exception Handling Common Exceptions Exceptions with Methods Assertions
More informationLanguage Features. 1. The primitive types int, double, and boolean are part of the AP
Language Features 1. The primitive types int, double, and boolean are part of the AP short, long, byte, char, and float are not in the subset. In particular, students need not be aware that strings are
More informationCOMPUTER APPLICATIONS
COMPUTER APPLICATIONS (Theory) (Two hours) Answers to this Paper must be written on the paper provided separately. You will not be allowed to write during the first 15 minutes. This time is to be spent
More informationLoops. Eng. Mohammed Abdualal. Islamic University of Gaza. Faculty of Engineering. Computer Engineering Department
Islamic University of Gaza Faculty of Engineering Computer Engineering Department Computer Programming Lab (ECOM 2114) Created by Eng: Mohammed Alokshiya Modified by Eng: Mohammed Abdualal Lab 6 Loops
More informationIntroduction to Computer Science Unit 2. Notes
Introduction to Computer Science Unit 2. Notes Name: Objectives: By the completion of this packet, students should be able to describe the difference between.java and.class files and the JVM. create and
More informationpublic class Test { static int age; public static void main (String args []) { age = age + 1; System.out.println("The age is " + age); }
Question No :1 What is the correct ordering for the import, class and package declarations when found in a Java class? 1. package, import, class 2. class, import, package 3. import, package, class 4. package,
More informationTutorial # 4. Q1. Evaluate the logical (Boolean) expression in the following exercise
Tutorial # 4 Q1. Evaluate the logical (Boolean) expression in the following exercise 1 int num1 = 3, num2 = 2; (num1 > num2) 2 double hours = 12.8; (hours > 40.2) 3 int funny = 7; (funny!= 1) 4 double
More information3. Java - Language Constructs I
Educational Objectives 3. Java - Language Constructs I Names and Identifiers, Variables, Assignments, Constants, Datatypes, Operations, Evaluation of Expressions, Type Conversions You know the basic blocks
More information1. Which of the following is the correct expression of character 4? a. 4 b. "4" c. '\0004' d. '4'
Practice questions: 1. Which of the following is the correct expression of character 4? a. 4 b. "4" c. '\0004' d. '4' 2. Will System.out.println((char)4) display 4? a. Yes b. No 3. The expression "Java
More informationAP CS Unit 3: Control Structures Notes
AP CS Unit 3: Control Structures Notes The if and if-else Statements. These statements are called control statements because they control whether a particular block of code is executed or not. Some texts
More informationAP COMPUTER SCIENCE A
AP COMPUTER SCIENCE A CONTROL FLOW Aug 28 2017 Week 2 http://apcs.cold.rocks 1 More operators! not!= not equals to % remainder! Goes ahead of boolean!= is used just like == % is used just like / http://apcs.cold.rocks
More informationpublic static void main(string[] args) throws FileNotFoundException { ArrayList<Vehicle> arrayofvehicles = new ArrayList<Vehicle>();
import java.io.*; import java.util.*; import java.text.*; import java.lang.*; // Class n00845431 public class Project4 static class EmailComparator implements Comparator public int compare(vehicle
More informationSoftware Practice 1 Basic Grammar
Software Practice 1 Basic Grammar Basic Syntax Data Type Loop Control Making Decision Prof. Joonwon Lee T.A. Jaehyun Song Jongseok Kim (42) T.A. Sujin Oh Junseong Lee (43) 1 2 Java Program //package details
More informationScanner Objects. Zheng-Liang Lu Java Programming 82 / 133
Scanner Objects It is not convenient to modify the source code and recompile it for a different radius. Reading from the console enables the program to receive an input from the user. A Scanner object
More informationObject Oriented Programming is a programming method that combines: Advantage of Object Oriented Programming
Overview of OOP Object Oriented Programming is a programming method that combines: a) Data b) Instructions for processing that data into a self-sufficient object that can be used within a program or in
More informationIndex COPYRIGHTED MATERIAL
Index COPYRIGHTED MATERIAL Note to the Reader: Throughout this index boldfaced page numbers indicate primary discussions of a topic. Italicized page numbers indicate illustrations. A abstract classes
More informationJava for Python Programmers. Comparison of Python and Java Constructs Reading: L&C, App B
Java for Python Programmers Comparison of Python and Java Constructs Reading: L&C, App B 1 General Formatting Shebang #!/usr/bin/env python Comments # comments for human readers - not code statement #
More information1 class Lecture3 { 2 3 "Selections" // Keywords 8 if, else, else if, switch, case, default. Zheng-Liang Lu Java Programming 88 / 133
1 class Lecture3 { 2 3 "Selections" 4 5 } 6 7 // Keywords 8 if, else, else if, switch, case, default Zheng-Liang Lu Java Programming 88 / 133 Flow Controls The basic algorithm (and program) is constituted
More informationOutline. 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 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 informationLogic is the anatomy of thought. John Locke ( ) This sentence is false.
Logic is the anatomy of thought. John Locke (1632 1704) This sentence is false. I know that I know nothing. anonymous Plato (In Apology, Plato relates that Socrates accounts for his seeming wiser than
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 informationCS212 Midterm. 1. Read the following code fragments and answer the questions.
CS1 Midterm 1. Read the following code fragments and answer the questions. (a) public void displayabsx(int x) { if (x > 0) { System.out.println(x); return; else { System.out.println(-x); return; System.out.println("Done");
More informationIEEE Floating-Point Representation 1
IEEE Floating-Point Representation 1 x = ( 1) s M 2 E The sign s determines whether the number is negative (s = 1) or positive (s = 0). The significand M is a fractional binary number that ranges either
More informationThis 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 informationSelec%on and Decision Structures in Java: If Statements and Switch Statements CSC 121 Fall 2016 Howard Rosenthal
Selec%on and Decision Structures in Java: If Statements and Switch Statements CSC 121 Fall 2016 Howard Rosenthal Lesson Goals Understand Control Structures Understand how to control the flow of a program
More informationCS 101 Exam 2 Spring Id Name
CS 101 Exam 2 Spring 2005 Email Id Name This exam is open text book and closed notes. Different questions have different points associated with them. Because your goal is to maximize your number of points,
More information1 class Lecture3 { 2 3 "Selections" // Keywords 8 if, else, else if, switch, case, default. Zheng-Liang Lu Java Programming 89 / 137
1 class Lecture3 { 2 3 "Selections" 4 5 } 6 7 // Keywords 8 if, else, else if, switch, case, default Zheng-Liang Lu Java Programming 89 / 137 Flow Controls The basic algorithm (and program) is constituted
More informationCOSC 123 Computer Creativity. Java Decisions and Loops. Dr. Ramon Lawrence University of British Columbia Okanagan
COSC 123 Computer Creativity Java Decisions and Loops Dr. Ramon Lawrence University of British Columbia Okanagan ramon.lawrence@ubc.ca Key Points 1) A decision is made by evaluating a condition in an if/else
More informationSoftware Practice 1 - Basic Grammar Basic Syntax Data Type Loop Control Making Decision
Software Practice 1 - Basic Grammar Basic Syntax Data Type Loop Control Making Decision Prof. Hwansoo Han T.A. Minseop Jeong T.A. Wonseok Choi 1 Java Program //package details public class ClassName {
More informationData Types. 1 You cannot change the type of the variable after declaration. Zheng-Liang Lu Java Programming 52 / 87
Data Types Java is a strongly-typed 1 programming language. Every variable has a type. Also, every (mathematical) expression has a type. There are two categories of data types: primitive data types, and
More informationCMP-326 Exam 2 Spring 2018 Total 120 Points Version 1
Version 1 5. (10 Points) What is the output of the following code: int total = 0; int i = 0; while( total < 90 ) { switch( i ) { case 0: total += 30; i = 1; break; case 1: i = 2; total -= 15; case 2: i
More informationSelec%on and Decision Structures in Java: If Statements and Switch Statements CSC 121 Spring 2016 Howard Rosenthal
Selec%on and Decision Structures in Java: If Statements and Switch Statements CSC 121 Spring 2016 Howard Rosenthal Lesson Goals Understand Control Structures Understand how to control the flow of a program
More informationJava Object Oriented Design. CSC207 Fall 2014
Java Object Oriented Design CSC207 Fall 2014 Design Problem Design an application where the user can draw different shapes Lines Circles Rectangles Just high level design, don t write any detailed code
More informationBirkbeck (University of London) Software and Programming 1 In-class Test Mar 2018
Birkbeck (University of London) Software and Programming 1 In-class Test 2.1 22 Mar 2018 Student Name Student Number Answer ALL Questions 1. What output is produced when the following Java program fragment
More informationJava Programming. Atul Prakash
Java Programming Atul Prakash Java Language Fundamentals The language syntax is similar to C/ C++ If you know C/C++, you will have no trouble understanding Java s syntax If you don't, it will be easier
More informationInterpreted vs Compiled. Java Compile. Classes, Objects, and Methods. Hello World 10/6/2016. Python Interpreted. Java Compiled
Interpreted vs Compiled Python 1 Java Interpreted Easy to run and test Quicker prototyping Program runs slower Compiled Execution time faster Virtual Machine compiled code portable Java Compile > javac
More informationOutline. Java Models for variables Types and type checking, type safety Interpretation vs. compilation. Reasoning about code. CSCI 2600 Spring
Java Outline Java Models for variables Types and type checking, type safety Interpretation vs. compilation Reasoning about code CSCI 2600 Spring 2017 2 Java Java is a successor to a number of languages,
More informationArithmetic Compound Assignment Operators
Arithmetic Compound Assignment Operators Note that these shorthand operators are not available in languages such as Matlab and R. Zheng-Liang Lu Java Programming 76 / 141 Example 1... 2 int x = 1; 3 System.out.println(x);
More information15CS45 : 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 informationChapter 7 User-Defined Methods. Chapter Objectives
Chapter 7 User-Defined Methods Chapter Objectives Understand how methods are used in Java programming Learn about standard (predefined) methods and discover how to use them in a program Learn about user-defined
More informationCSCI 136 Written Exam #0 Fundamentals of Computer Science II Spring 2015
CSCI 136 Written Exam #0 Fundamentals of Computer Science II Spring 2015 Name: This exam consists of 6 problems on the following 7 pages. You may use your single-sided handwritten 8 ½ x 11 note sheet during
More information2. [20] Suppose we start declaring a Rectangle class as follows:
1. [8] Create declarations for each of the following. You do not need to provide any constructors or method definitions. (a) The instance variables of a class to hold information on a Minesweeper cell:
More informationCS 113 PRACTICE FINAL
CS 113 PRACTICE FINAL There are 13 questions on this test. The value of each question is: 1-10 multiple choice (4 pt) 11-13 coding problems (20 pt) You may get partial credit for questions 11-13. If you
More informationif (i % 2 == 0) { return 4 + method(i + 5) } if (i % 2 == 1) { return 2 + method(i + 3) } public static int method( int i )
Review Exercises Here is a list of review exercises. There are times when an exercise will be open ended, allowing you to pursue multiple aspects of the material. While encompassing some areas we have
More informationBIT Java Programming. Sem 1 Session 2011/12. Chapter 2 JAVA. basic
BIT 3383 Java Programming Sem 1 Session 2011/12 Chapter 2 JAVA basic Objective: After this lesson, you should be able to: declare, initialize and use variables according to Java programming language guidelines
More informationLoops and Expression Types
Software and Programming I Loops and Expression Types Roman Kontchakov / Carsten Fuhs Birkbeck, University of London Outline The while, for and do Loops Sections 4.1, 4.3 and 4.4 Variable Scope Section
More informationCONDITIONAL EXECUTION
CONDITIONAL EXECUTION yes x > y? no max = x; max = y; logical AND logical OR logical NOT &&! Fundamentals of Computer Science I Outline Conditional Execution if then if then Nested if then statements Comparisons
More informationFull file at
Chapter 1 Primitive Java Weiss 4 th Edition Solutions to Exercises (US Version) 1.1 Key Concepts and How To Teach Them This chapter introduces primitive features of Java found in all languages such as
More information1 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 informationFull download all chapters instantly please go to Solutions Manual, Test Bank site: testbanklive.com
Introduction to Java Programming Comprehensive Version 10th Edition Liang Test Bank Full Download: http://testbanklive.com/download/introduction-to-java-programming-comprehensive-version-10th-edition-liang-tes
More informationMore Things We Can Do With It! Overview. Circle Calculations. πr 2. π = More operators and expression types More statements
More Things We Can Do With It! More operators and expression types More s 11 October 2007 Ariel Shamir 1 Overview Variables and declaration More operators and expressions String type and getting input
More informationPolymorphism. return a.doublevalue() + b.doublevalue();
Outline Class hierarchy and inheritance Method overriding or overloading, polymorphism Abstract classes Casting and instanceof/getclass Class Object Exception class hierarchy Some Reminders Interfaces
More informationCOMP 202 Java in one week
COMP 202 Java in one week... Continued CONTENTS: Return to material from previous lecture At-home programming exercises Please Do Ask Questions It's perfectly normal not to understand everything Most of
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 informationMore on Java. Object-Oriented Programming
More on Java Object-Oriented Programming Outline Instance variables vs. local variables Primitive vs. reference types Object references, object equality Objects' and variables' lifetime Parameters passing
More informationPROGRAMMING 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 informationArray. Array Declaration:
Array Arrays are continuous memory locations having fixed size. Where we require storing multiple data elements under single name, there we can use arrays. Arrays are homogenous in nature. It means and
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 informationControl Flow. COMS W1007 Introduction to Computer Science. Christopher Conway 3 June 2003
Control Flow COMS W1007 Introduction to Computer Science Christopher Conway 3 June 2003 Overflow from Last Time: Why Types? Assembly code is typeless. You can take any 32 bits in memory, say this is an
More informationpublic class Foo { private int var; public int Method1() { // var accessible anywhere here } public int MethodN() {
Scoping, Static Variables, Overloading, Packages In this lecture, we will examine in more detail the notion of scope for variables. We ve already indicated that variables only exist within the block they
More informationCSC 1051 Algorithms and Data Structures I. Final Examination May 12, Name
CSC 1051 Algorithms and Data Structures I Final Examination May 12, 2017 Name Question Value Score 1 10 2 10 3 10 4 10 5 10 6 10 7 10 8 10 9 10 10 10 TOTAL 100 Please answer questions in the spaces provided.
More informationFinal Exam Practice Questions
Final Exam Practice Questions 1. Short Answer Questions (10 points total) (a) Given the following hierarchy: class Alpha {... class Beta extends Alpha {... class Gamma extends Beta {... What order are
More informationChapter 3. Selections
Chapter 3 Selections 1 Outline 1. Flow of Control 2. Conditional Statements 3. The if Statement 4. The if-else Statement 5. The Conditional operator 6. The Switch Statement 7. Useful Hints 2 1. Flow of
More information2. The object-oriented paradigm
2. The object-oriented paradigm Plan for this section: Look at things we have to be able to do with a programming language Look at Java and how it is done there Note: I will make a lot of use of the fact
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 informationI 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 informationFall 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 informationReview Chapters 1 to 4. Instructor: Scott Kristjanson CMPT 125/125 SFU Burnaby, Fall 2013
Review Chapters 1 to 4 Instructor: Scott Kristjanson CMPT 125/125 SFU Burnaby, Fall 2013 Introduction to Java Chapters 1 and 2 The Java Language Section 1.1 Data & Expressions Sections 2.1 2.5 Instructor:
More informationKey Points. COSC 123 Computer Creativity. Java Decisions and Loops. Making Decisions Performing Comparisons. Making Decisions
COSC 123 Computer Creativity Java Decisions and Loops Dr. Ramon Lawrence University of British Columbia Okanagan ramon.lawrence@ubc.ca Key Points 1) A decision is made by evaluating a condition in an if/
More informationfalse, import, new 1 class Lecture2 { 2 3 "Data types, Variables, and Operators" 4
1 class Lecture2 { 2 3 "Data types, Variables, and Operators" 4 5 } 6 7 // Keywords: 8 byte, short, int, long, char, float, double, boolean, true, false, import, new Zheng-Liang Lu Java Programming 45
More informationCharacter Stream : It provides a convenient means for handling input and output of characters.
Be Perfect, Do Perfect, Live Perfect 1 1. What is the meaning of public static void main(string args[])? public keyword is an access modifier which represents visibility, it means it is visible to all.
More informationProgramming: Java. Chapter Objectives. Chapter Objectives (continued) Program Design Including Data Structures. Chapter 7: User-Defined Methods
Chapter 7: User-Defined Methods Java Programming: Program Design Including Data Structures Chapter Objectives Understand how methods are used in Java programming Learn about standard (predefined) methods
More informationCH. 2 OBJECT-ORIENTED PROGRAMMING
CH. 2 OBJECT-ORIENTED PROGRAMMING ACKNOWLEDGEMENT: THESE SLIDES ARE ADAPTED FROM SLIDES PROVIDED WITH DATA STRUCTURES AND ALGORITHMS IN JAVA, GOODRICH, TAMASSIA AND GOLDWASSER (WILEY 2016) OBJECT-ORIENTED
More information