Download presentation
Presentation is loading. Please wait.
Published byDella Bryant Modified over 8 years ago
1
Object-Oriented Program Development Using Java: A Class-Centered Approach, Enhanced Edition
2
2 Objectives You should be able to describe: Data Values and Arithmetic Operations Constructing a Data Declaration Section: Variables Completing the Class: Methods Assignment Operations
3
Object-Oriented Program Development Using Java: A Class-Centered Approach, Enhanced Edition3 Objectives (continued) Program Design and Development: Object Identification Common Programming Errors
4
Object-Oriented Program Development Using Java: A Class-Centered Approach, Enhanced Edition4 Data Values and Arithmetic Operations General data types: –Primitive –Reference Literal –Value that explicitly identifies itself –Example: 1 “xyz”
5
Object-Oriented Program Development Using Java: A Class-Centered Approach, Enhanced Edition5 Data Values and Arithmetic Operations (continued) Figure 2.1: Primitive data types
6
Object-Oriented Program Development Using Java: A Class-Centered Approach, Enhanced Edition6 Data Values and Arithmetic Operations (continued) Figure 2.2: Reference types
7
Object-Oriented Program Development Using Java: A Class-Centered Approach, Enhanced Edition7 Integer Literals Zero or any positive or negative numerical value without decimal point Examples: –1 –-406 –352563 Other data types: –Byte –Short integer
8
Object-Oriented Program Development Using Java: A Class-Centered Approach, Enhanced Edition8 Integer Literals (continued) Table 2.1: Integer Data Types
9
Object-Oriented Program Development Using Java: A Class-Centered Approach, Enhanced Edition9 Floating-Point Values Also called real numbers Numerical value with decimal point Examples: –-1.24 –0.0 –2435.34 Data types: –Double –Float
10
Object-Oriented Program Development Using Java: A Class-Centered Approach, Enhanced Edition10 Floating-Point Values (continued) Table 2.2: Floating-Point Data Types
11
Object-Oriented Program Development Using Java: A Class-Centered Approach, Enhanced Edition11 Precision, Exponential Notation, and Atomic Data Precision can either refer to: –Accuracy of number –Number of significant digits in number Exponential notation: –Express very large and very small values in compact form –63421. in exponential notation is 6.3421e4 Atomic data –Complete entity by itself
12
Object-Oriented Program Development Using Java: A Class-Centered Approach, Enhanced Edition12 Character Values Letters of alphabet –Both uppercase and lowercase 10 digits 0 through 9 Special symbols such as 1 $., - ! Stored as 16-bit unsigned values using Unicode
13
Object-Oriented Program Development Using Java: A Class-Centered Approach, Enhanced Edition13 Escape Sequences \ before characters Tells compiler to execute differently from normal behavior
14
Object-Oriented Program Development Using Java: A Class-Centered Approach, Enhanced Edition14 Escape Sequences (continued) Table 2.4: Escape Sequences
15
Object-Oriented Program Development Using Java: A Class-Centered Approach, Enhanced Edition15 Boolean Values Restricted to one of two values: –True –False
16
Object-Oriented Program Development Using Java: A Class-Centered Approach, Enhanced Edition16 Arithmetic Operations Used for mathematical calculations Operators: –Addition: + –Subtraction: - –Multiplication: * –Division: / –Modulus: %
17
Object-Oriented Program Development Using Java: A Class-Centered Approach, Enhanced Edition17 Arithmetic Operations (continued) Simple arithmetic expression Integer expression Real expression Mixed-mode expression Overloaded operator –Symbol represents more than one operation –Execution depends on types of operands encountered
18
Object-Oriented Program Development Using Java: A Class-Centered Approach, Enhanced Edition18 Integer Division Division of two integers c an produce strange results for unwary Integers cannot contain fractional part –It is dropped Example: –15/7 = 2
19
Object-Oriented Program Development Using Java: A Class-Centered Approach, Enhanced Edition19 The Modulus Operator Retain remainder of division Operator symbol: –% Example: –9.2 % 4 = 1.2 –15 % 4 = 3
20
Object-Oriented Program Development Using Java: A Class-Centered Approach, Enhanced Edition20 Negation Unary operator –One that operates on single operand Same symbol as binary subtraction (-) Negates or reverses number
21
Object-Oriented Program Development Using Java: A Class-Centered Approach, Enhanced Edition21 Negation (continued) Table 2.6: Summary of Arithmetic Operations
22
Object-Oriented Program Development Using Java: A Class-Centered Approach, Enhanced Edition22 Operator Precedence and Associativity Rules for working with arithmetic operators: –Two binary arithmetic operator symbols must never be placed side by side –Parentheses may be used to form groupings Expressions in parentheses are evaluated first –Parentheses can be nested –Parentheses cannot be used to indicate multiplication
23
Object-Oriented Program Development Using Java: A Class-Centered Approach, Enhanced Edition23 Operator Precedence and Associativity (continued) Order of operations: –All negations are done first –Multiplication, division, and modulus operations are computed first –Addition and subtraction are computed last
24
Object-Oriented Program Development Using Java: A Class-Centered Approach, Enhanced Edition24 String Concatenation Joins two or more strings into single string Only operation that directly manipulates string data in similar fashion as numerical data Has same precedence as addition operator –Always use parentheses when performing arithmetic operations in any expression that contains a string
25
Object-Oriented Program Development Using Java: A Class-Centered Approach, Enhanced Edition25 Constructing a Data Declaration Section: Variables Values in computer program are stored and retrieved from computer’s memory unit Variable: –Name given by programmer –Refers to computer storage locations that store primitive data type value Selection of variable names is left to programmer
26
Object-Oriented Program Development Using Java: A Class-Centered Approach, Enhanced Edition26 Declaration Statements Naming variable and specifying data type Syntax: –optionalAccessSpecifier dataType variableName; Example: –private int sum; Initial value: –Declaration and initialization in one line of code –private int num1 = 15;
27
Object-Oriented Program Development Using Java: A Class-Centered Approach, Enhanced Edition27 Constructing a Data Declaration Section Classifications of variables: –Instance –Class –Local –Parameter Dependent on: –Variable placement within class –Presence or absence of reserved word static
28
Object-Oriented Program Development Using Java: A Class-Centered Approach, Enhanced Edition28 Constructing a Data Declaration Section (continued) Table 2.8: Determination of Variable Types
29
Object-Oriented Program Development Using Java: A Class-Centered Approach, Enhanced Edition29 Creating Objects Objects –Only created from instance variables declared in data declaration section or from other object types Methods –Provide operations that can be applied to created objects or create general-purpose functions Independent of any one object
30
Object-Oriented Program Development Using Java: A Class-Centered Approach, Enhanced Edition30 Creating Objects (continued) Figure 2.6: The RoomType class
31
Object-Oriented Program Development Using Java: A Class-Centered Approach, Enhanced Edition31 Creating Objects (continued) Using dynamic memory allocation operator also called: –Creating an instance –Instantiating an object Reference variable –Reference location in memory where actual object’s values located
32
Object-Oriented Program Development Using Java: A Class-Centered Approach, Enhanced Edition32 Creating Objects (continued) Private –Once object is created, its private variables can only be accessed by its class methods –Safety feature provided by object-oriented languages Cleansing Memory –Memory leak problem –Objects keep track of who references them –JVM cleans unused memory
33
Object-Oriented Program Development Using Java: A Class-Centered Approach, Enhanced Edition33 Creating Objects (continued) Figure 2.8: Instantiating an object
34
Object-Oriented Program Development Using Java: A Class-Centered Approach, Enhanced Edition34 Specifying Storage Allocation Declaring variables protects against typos –Compiler catches errors Each data type has its own storage requirements –Compiler pre-allocates memory based on data type Definition statements –Statements that cause variables to be created
35
Object-Oriented Program Development Using Java: A Class-Centered Approach, Enhanced Edition35 Completing the Class: Methods Classes provide methods to: –Initialize values stored in each instance variable to user-selected values –Display values –Modify values Format of method header: –public returnType methodName(parameter list) Public –Means method can be used in other classes
36
Object-Oriented Program Development Using Java: A Class-Centered Approach, Enhanced Edition36 Constructor Methods Method that has same name as class Automatically called each time object created Purpose: –Initialize new object’s instance variables Format: public ClassName(parameter list) { method body }
37
Object-Oriented Program Development Using Java: A Class-Centered Approach, Enhanced Edition37 Accessor Methods Provide means for reading values stored in object’s variables Referred to as get() method
38
Object-Oriented Program Development Using Java: A Class-Centered Approach, Enhanced Edition38 Mutator Methods Provide means for changing object’s values –After object created Also known as set() methods
39
Object-Oriented Program Development Using Java: A Class-Centered Approach, Enhanced Edition39 Convenience Can be convenient to place two classes in one file –Second class’s main() method is placed within first class’s methods section –Both classes are stored in same file public reserved word removed from class that does not contain main() method
40
Object-Oriented Program Development Using Java: A Class-Centered Approach, Enhanced Edition40 Assignment Operations Most basic statements for initializing variables General syntax: –variable = expression; Example: –length = 25; Expression –Any combination of constants and variables that can be evaluated to yield a result
41
Object-Oriented Program Development Using Java: A Class-Centered Approach, Enhanced Edition41 Assignment Operations (continued) All variables used in expression must previously have been given valid values Must be a variable listed immediately to left of equal sign Has lower precedence than any other arithmetic operator
42
Object-Oriented Program Development Using Java: A Class-Centered Approach, Enhanced Edition42 Multiple Declarations Variables with same data type can be grouped –Declared using single declaration statement Frequently used in declaring method’s internal variables Coercion –Forced conversion based on data types
43
Object-Oriented Program Development Using Java: A Class-Centered Approach, Enhanced Edition43 Assignment Variations In an assignment expression: –Variable to left of equal sign can also be used to right of equal sign Shortcut assignment operators: –+= –-= –*= –/= –%=
44
Object-Oriented Program Development Using Java: A Class-Centered Approach, Enhanced Edition44 Accumulating Values added to program variable as program progresses Uses assignment operator: –sum = sum + 10,
45
Object-Oriented Program Development Using Java: A Class-Centered Approach, Enhanced Edition45 Counting Counting statement form: –variable = variable + fixedNumber; Example: –i = i + 1; Increment/decrement operators: ++-- –Example : i++
46
Object-Oriented Program Development Using Java: A Class-Centered Approach, Enhanced Edition46 Program Design and Development: Object Identification Model –Representation of problem Attributes –Define properties of interest Behaviors –Define how object reacts to its environment
47
Object-Oriented Program Development Using Java: A Class-Centered Approach, Enhanced Edition47 Program Design and Development: Object Identification (continued) Figure 2.22: An initial object description
48
Object-Oriented Program Development Using Java: A Class-Centered Approach, Enhanced Edition48 From Objects to Classes Class –Category of objects defined by given set of attributes and behavior State –Describes how object appears at moment –Defined by values that have been assigned to its attributes Identity –Name that uniquely identifies object
49
Object-Oriented Program Development Using Java: A Class-Centered Approach, Enhanced Edition49 Procedural versus Object Orientations Procedure-oriented programming –Emphasis on operations to be performed Object-oriented programming –Emphasis on attributes and behavior of objects
50
Object-Oriented Program Development Using Java: A Class-Centered Approach, Enhanced Edition50 Common Programming Errors Forgetting to declare all variables used in class Forgetting to assign or initialize values for all variables before variables are used in expression Mixing data types in same expression without clearly understanding effect produced Defining more than one default constructor for class
51
Object-Oriented Program Development Using Java: A Class-Centered Approach, Enhanced Edition51 Summary Primitive data types: –Numerical –Boolean Every variable must be declared as to type of value it can store Class –Programmer-defined data type
52
Object-Oriented Program Development Using Java: A Class-Centered Approach, Enhanced Edition52 Summary (continued) Classes contain methods: –Constructor –Accessor –Mutator Expressions evaluated according to precedence and associativity of operators used Assignment symbol operator: –=
Similar presentations
© 2024 SlidePlayer.com Inc.
All rights reserved.