SlideShare a Scribd company logo
Object Oriented Programming
                  1




LECTURER: NURHANNA AZIZ
ROOM: 3206
EMAIL: NURHANNA@KUIS.EDU.MY
HP: 0192223454
Prerequisites
                        2

Must have taken “Introduction to Programming” /
“Fundamental of Programming” subject
Basic understanding of programming (variables,
control flow, branch condition, simple array etc)
Student must be able to write a simple program
Recommended Books
                         3

Deitel & Deitel
 Java How to Program. 2007. Pearson International
 Edition.
Dennis Liang
 Java Object Oriented Programming. 2009.
 Thompson Learning
C. Thomas Wu.
 An introduction to Object Oriented Programming
 with Java. 2004. McGrawHill.
Syllabus
                      4

Object Oriented Programming
Method
Encapsulation
Inheritance
Polymorphism
Exceptions
Java Applet
Building Java GUIs
GUI Event Handling
GUI-based applications
Course Evaluation
                    5

Mid term Test     20%
Project           20%
Lab Assessments    15%
Attendance           5%
Final Exam        40%
Teaching Outcomes
                         6

By the end of this module, student should be :
 Familiar with programming concept within JAVA
 Able to carry out design and development of complex
 element such as user interfaces
Learning Outcomes
                         7

An appreciation of the complexities of large
programs, and the use of classes and inheritance to
manage this complexity
 The ability to design a collection of classes to
implement a large program
 An appreciation of good programming style (clarity,
elegance)
How to pass the subject?
                   8


Continuous Assessment (Coursework)
60%
Final Exam 40%

For DTCO 3023 – 50% overall to pass
For DTCO 3103 & DTCO 3113 – 40%
overall to pass

Attend the lectures
Do assignment, exercise
Do all the practical(lab) as best as you can.
Project Presentation
Attendance
                              9

Student will be bared from sitting for final exam if
 Not attend for lectures & lab – 3 times continuously; or
 Have 30% and more absent record
Revision
   10
Sample of Java Application Program
                    11




                         VIEW SOURCE
      RUN PROGRAM           CODE
Source Code
     12




          Name of the class / programs
                  The “main” method
Why Java?
                       13

“Write once, Run Anywhere”
Security
Network-centric Programming
Dynamic, Extensible Program
Internationalization
Performance
Programmer efficiency and time-to-Market
Java: Names & Reserved Names
                                     14

  Legal name (variables, method, fields,
  parameter,class, interface or package)
        Start with:
          Letter/dollar sign($)/ underscore (_)/ digits(0-9)
  Reserved names
abstract      char         else           goto         long        public

assert        class        extends        if           native      return

boolean       const        false          implements   new         short

break         continue     final          import       null        static

byte          default      finally        instanceof   package     strictfp

case          do           float          int          private     super

catch         double       for            interface    protected   switch
Java Naming Conventions
                    15



Names of variables, fields, methods:
 Begin with lowercase letter
 shape, myShape
Name of classes and interfaces:
 Begin with UPPERCASE letter
 Cube, ColorCube
16


Named constants:
   Written fully in UPPERCASE
   Separated by underscore (_)
   CENTER, MAX_VALUE, MIN_VALUE
If name is composed of several words:
   First word begins with lowercase, first letter of
   second word begins with UPPERCASE, the rest
   back to lowercase
   setLayout,addPatientName
Comments
                         17


Have no effect on the execution of the program
2 forms:
 one-line comments
   E.g.
     Class Comment {
     // This is one-line comment, its extends to the
     end of line }

 delimited comments
   E.g.
     Class Comment {
     /* This is a delimited comment,
            extending over several lines
        */
Types
                            18


Primitive type
 E.g.
   boolean,char,byte,short, int, long,float,double
Reference type
 Class type defined/ interface type defined
Array type
 In form [ ]
Variables
                          19


Syntax
 <Variable-modifier>< type>< variables_name>;
E.g.
 public static void main (String[] args){
   int a, b,c;
   int x=1, y=2,z=3;
   int myDivide=z/x;
   double PI=3.1415;
   boolean isFound=false;
 }
Declaring Variables
                  20




int x;          // Declare x to be an
                // integer variable;
double radius; // Declare radius to
               // be a double variable;
char a;         // Declare a to be a
                // character variable;
Assignment Statements
            21




x = 1;           // Assign 1 to x;

radius = 1.0;    // Assign 1.0 to
a = 'A';         // Assign 'A' to a;
Declaring and Initializing in One Step
                22




     int x = 1;
     double d = 1.4;
Constants
            23



final datatype CONSTANTNAME = VALUE;

final double PI = 3.14159;
final int SIZE = 3;
The String Type
                        24


     E.g.: String message = "Welcome to Java";
String Concatenation
  // Three strings are concatenated
  String message = "Welcome " + "to " + "Java";

  // String Chapter is concatenated with number 2
  String s = "Chapter" + 2; // s becomes Chapter2

  // String Supplement is concatenated with character B
  String s1 = "Supplement" + 'B'; // s1 becomes
  SupplementB
Programming Errors
                   25

Syntax Errors
 Detected by the compiler
Runtime Errors
 Causes the program to abort
Logic Errors
 Produces incorrect result
Converting Strings to Integers
                         26




 use the static parseInt method in the Integer class
as follows:

     int intValue =
     Integer.parseInt(intString);

where intString is a numeric string such as “123”.
Converting Strings to Doubles
                        27


 use the static parseDouble method in the Double
class as follows:

double doubleValue
=Double.parseDouble(doubleString);

where doubleString is a numeric string such as
“123.45”.
28
                The Two-way if Statement
if (boolean-expression) {
  statement(s)-for-the-true-case;
}
else {
  statement(s)-for-the-false-case;
}


                            true                 false
                                     Boolean
                                    Expression

   Statement(s) for the true case                Statement(s) for the false case
if...else Example
                   29


if (radius >= 0) {
  area = radius * radius * 3.14159;

 System.out.println("The area for the “
   + “circle of radius " + radius +
   " is " + area);
}
else {
  System.out.println("Negative input");
}
Common Errors
                             30


 Adding a semicolon at the end of an if clause is a common
mistake.
  if (radius >= 0);
  {
    area = radius*radius*PI;
    System.out.println(
      "The area for the circle of
  radius " +
      radius + " is " + area);
  }
switch Statements
switch (status) { 31
  case 0: compute taxes for single filers;
       break;
  case 1: compute taxes for married file jointly;
       break;
  case 2: compute taxes for married file separately;
       break;
  case 3: compute taxes for head of household;
       break;
  default: System.out.println("Errors: invalid status");
       System.exit(0);
}
32
        while Loops

int count = 0;
while (count < 100) {
  System.out.println("Welcome to Java");
  count++;
}
while Loop Flow Chart
                                            33
                                                 int count = 0;
while (loop-continuation-
condition) {                                     while (count < 100) {

    // loop-body;                                    System.out.println("Welcome to Java!");
                                                     count++;
    Statement(s);
                                                 }
}
                                                                  count = 0;



                       Loop
                                    false                                          false
                    Continuation                                (count < 100)?
                     Condition?

                      true                                         true
                     Statement(s)                    System.out.println("Welcome to Java!");
                     (loop body)                     count++;




                        (A)                                           (B)
do-while Loop
                       34




                                   Statement(s)
                                   (loop body)


                            true      Loop
                                   Continuation
do {                                Condition?
  // Loop body;                             false
  Statement(s);
} while (loop-continuation-condition);
for Loops
                                           35   int i;
for (initial-action;
  loop-continuation-                            for (i = 0; i < 100;
  condition; action-                              i++) {
  after-each-iteration) {                         System.out.println(
   // loop body;                                     "Welcome to
   Statement(s);
}                                                 Java!");
                                                }

                Initial-Action                             i=0


                    Loop
                                   false                                   false
                 Continuation                            (i < 100)?
                  Condition?
                  true                                   true
                 Statement(s)                       System.out.println(
                 (loop body)                         "Welcome to Java");

          Action-After-Each-Iteration                       i++




                     (A)                                    (B)
Review Questions
                     36



Problems:
 1. Wahid just bought himself a set of home
 theatre. Declare a variables of TV of type
 String, speakers of type int, price of type
 double and goodCondition of type boolean.

 2. Amir had 5 history books. Declare an
 array of book he had.

More Related Content

PDF
Pl sql programme
PPT
C tutorial
PDF
Algorithm and Programming (Branching Structure)
PPT
Paradigmas de Linguagens de Programacao - Aula #5
PDF
Algorithm and Programming (Looping Structure)
PPTX
Programming Fundamentals
PPT
Paradigmas de Linguagens de Programacao - Aula #4
PDF
16 -ansi-iso_standards
Pl sql programme
C tutorial
Algorithm and Programming (Branching Structure)
Paradigmas de Linguagens de Programacao - Aula #5
Algorithm and Programming (Looping Structure)
Programming Fundamentals
Paradigmas de Linguagens de Programacao - Aula #4
16 -ansi-iso_standards

What's hot (20)

PPT
FP 201 Unit 3
PDF
05 -working_with_the_preproce
PPTX
12. Java Exceptions and error handling
DOCX
Virtual function
PPT
FP 201 Unit 2 - Part 3
PDF
Algorithm and Programming (Procedure and Function)
PPT
C++ programming
PPTX
C++ Presentation
DOC
C aptitude.2doc
DOC
Captitude 2doc-100627004318-phpapp01
PDF
Unlocking the Magic of Monads with Java 8
PDF
C Programming Storage classes, Recursion
PPT
PPTX
C if else
PDF
C Recursion, Pointers, Dynamic memory management
PDF
Data structure scope of variables
PPT
FP 201 - Unit 3 Part 2
PDF
C++ idioms by example (Nov 2008)
PDF
C++ Quick Reference Sheet from Hoomanb.com
PPTX
Conditional statement c++
FP 201 Unit 3
05 -working_with_the_preproce
12. Java Exceptions and error handling
Virtual function
FP 201 Unit 2 - Part 3
Algorithm and Programming (Procedure and Function)
C++ programming
C++ Presentation
C aptitude.2doc
Captitude 2doc-100627004318-phpapp01
Unlocking the Magic of Monads with Java 8
C Programming Storage classes, Recursion
C if else
C Recursion, Pointers, Dynamic memory management
Data structure scope of variables
FP 201 - Unit 3 Part 2
C++ idioms by example (Nov 2008)
C++ Quick Reference Sheet from Hoomanb.com
Conditional statement c++
Ad

Viewers also liked (7)

PPTX
Chapter 05 polymorphism
PPTX
Chapter 05 polymorphism extra
PDF
Chapter 03 enscapsulation
PDF
Chapter 04 inheritance
PPTX
How to Build a Dynamic Social Media Plan
PDF
Learn BEM: CSS Naming Convention
PDF
SEO: Getting Personal
Chapter 05 polymorphism
Chapter 05 polymorphism extra
Chapter 03 enscapsulation
Chapter 04 inheritance
How to Build a Dynamic Social Media Plan
Learn BEM: CSS Naming Convention
SEO: Getting Personal
Ad

Similar to Chapter 00 revision (20)

PPTX
Java introduction
PPT
PPT
JavaYDL4
PPT
Java Programming: Loops
PPTX
Core java
PPT
Cso gaddis java_chapter4
PPTX
JPC#8 Introduction to Java Programming
PPT
Comp102 lec 5.1
PPT
00_Introduction to Java.ppt
PPTX
Advanced Computer Programming..pptx
PPTX
Java chapter 3
DOCX
PPTX
JAVA programming language made easy.pptx
PDF
Java concepts and questions
PPT
شرح مقرر البرمجة 2 لغة جافا - الوحدة الثالثة
PPTX
05. Java Loops Methods and Classes
PPTX
Java Foundations: Basic Syntax, Conditions, Loops
PPT
Java basic tutorial by sanjeevini india
PPT
Java basic tutorial by sanjeevini india
PPT
Unit I Advanced Java Programming Course
Java introduction
JavaYDL4
Java Programming: Loops
Core java
Cso gaddis java_chapter4
JPC#8 Introduction to Java Programming
Comp102 lec 5.1
00_Introduction to Java.ppt
Advanced Computer Programming..pptx
Java chapter 3
JAVA programming language made easy.pptx
Java concepts and questions
شرح مقرر البرمجة 2 لغة جافا - الوحدة الثالثة
05. Java Loops Methods and Classes
Java Foundations: Basic Syntax, Conditions, Loops
Java basic tutorial by sanjeevini india
Java basic tutorial by sanjeevini india
Unit I Advanced Java Programming Course

Recently uploaded (20)

PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PPTX
Cloud computing and distributed systems.
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
CIFDAQ's Market Insight: SEC Turns Pro Crypto
PDF
KodekX | Application Modernization Development
PDF
Review of recent advances in non-invasive hemoglobin estimation
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Encapsulation theory and applications.pdf
DOCX
The AUB Centre for AI in Media Proposal.docx
PPTX
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PPTX
Big Data Technologies - Introduction.pptx
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
NewMind AI Monthly Chronicles - July 2025
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
Network Security Unit 5.pdf for BCA BBA.
Dropbox Q2 2025 Financial Results & Investor Presentation
Per capita expenditure prediction using model stacking based on satellite ima...
Cloud computing and distributed systems.
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Diabetes mellitus diagnosis method based random forest with bat algorithm
Reach Out and Touch Someone: Haptics and Empathic Computing
Encapsulation_ Review paper, used for researhc scholars
CIFDAQ's Market Insight: SEC Turns Pro Crypto
KodekX | Application Modernization Development
Review of recent advances in non-invasive hemoglobin estimation
Digital-Transformation-Roadmap-for-Companies.pptx
Encapsulation theory and applications.pdf
The AUB Centre for AI in Media Proposal.docx
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
Advanced methodologies resolving dimensionality complications for autism neur...
Big Data Technologies - Introduction.pptx
“AI and Expert System Decision Support & Business Intelligence Systems”
NewMind AI Monthly Chronicles - July 2025
Building Integrated photovoltaic BIPV_UPV.pdf

Chapter 00 revision

  • 1. Object Oriented Programming 1 LECTURER: NURHANNA AZIZ ROOM: 3206 EMAIL: NURHANNA@KUIS.EDU.MY HP: 0192223454
  • 2. Prerequisites 2 Must have taken “Introduction to Programming” / “Fundamental of Programming” subject Basic understanding of programming (variables, control flow, branch condition, simple array etc) Student must be able to write a simple program
  • 3. Recommended Books 3 Deitel & Deitel Java How to Program. 2007. Pearson International Edition. Dennis Liang Java Object Oriented Programming. 2009. Thompson Learning C. Thomas Wu. An introduction to Object Oriented Programming with Java. 2004. McGrawHill.
  • 4. Syllabus 4 Object Oriented Programming Method Encapsulation Inheritance Polymorphism Exceptions Java Applet Building Java GUIs GUI Event Handling GUI-based applications
  • 5. Course Evaluation 5 Mid term Test 20% Project 20% Lab Assessments 15% Attendance 5% Final Exam 40%
  • 6. Teaching Outcomes 6 By the end of this module, student should be : Familiar with programming concept within JAVA Able to carry out design and development of complex element such as user interfaces
  • 7. Learning Outcomes 7 An appreciation of the complexities of large programs, and the use of classes and inheritance to manage this complexity The ability to design a collection of classes to implement a large program An appreciation of good programming style (clarity, elegance)
  • 8. How to pass the subject? 8 Continuous Assessment (Coursework) 60% Final Exam 40% For DTCO 3023 – 50% overall to pass For DTCO 3103 & DTCO 3113 – 40% overall to pass Attend the lectures Do assignment, exercise Do all the practical(lab) as best as you can. Project Presentation
  • 9. Attendance 9 Student will be bared from sitting for final exam if Not attend for lectures & lab – 3 times continuously; or Have 30% and more absent record
  • 10. Revision 10
  • 11. Sample of Java Application Program 11 VIEW SOURCE RUN PROGRAM CODE
  • 12. Source Code 12 Name of the class / programs The “main” method
  • 13. Why Java? 13 “Write once, Run Anywhere” Security Network-centric Programming Dynamic, Extensible Program Internationalization Performance Programmer efficiency and time-to-Market
  • 14. Java: Names & Reserved Names 14 Legal name (variables, method, fields, parameter,class, interface or package) Start with: Letter/dollar sign($)/ underscore (_)/ digits(0-9) Reserved names abstract char else goto long public assert class extends if native return boolean const false implements new short break continue final import null static byte default finally instanceof package strictfp case do float int private super catch double for interface protected switch
  • 15. Java Naming Conventions 15 Names of variables, fields, methods: Begin with lowercase letter shape, myShape Name of classes and interfaces: Begin with UPPERCASE letter Cube, ColorCube
  • 16. 16 Named constants: Written fully in UPPERCASE Separated by underscore (_) CENTER, MAX_VALUE, MIN_VALUE If name is composed of several words: First word begins with lowercase, first letter of second word begins with UPPERCASE, the rest back to lowercase setLayout,addPatientName
  • 17. Comments 17 Have no effect on the execution of the program 2 forms: one-line comments E.g. Class Comment { // This is one-line comment, its extends to the end of line } delimited comments E.g. Class Comment { /* This is a delimited comment, extending over several lines */
  • 18. Types 18 Primitive type E.g. boolean,char,byte,short, int, long,float,double Reference type Class type defined/ interface type defined Array type In form [ ]
  • 19. Variables 19 Syntax <Variable-modifier>< type>< variables_name>; E.g. public static void main (String[] args){ int a, b,c; int x=1, y=2,z=3; int myDivide=z/x; double PI=3.1415; boolean isFound=false; }
  • 20. Declaring Variables 20 int x; // Declare x to be an // integer variable; double radius; // Declare radius to // be a double variable; char a; // Declare a to be a // character variable;
  • 21. Assignment Statements 21 x = 1; // Assign 1 to x; radius = 1.0; // Assign 1.0 to a = 'A'; // Assign 'A' to a;
  • 22. Declaring and Initializing in One Step 22 int x = 1; double d = 1.4;
  • 23. Constants 23 final datatype CONSTANTNAME = VALUE; final double PI = 3.14159; final int SIZE = 3;
  • 24. The String Type 24 E.g.: String message = "Welcome to Java"; String Concatenation // Three strings are concatenated String message = "Welcome " + "to " + "Java"; // String Chapter is concatenated with number 2 String s = "Chapter" + 2; // s becomes Chapter2 // String Supplement is concatenated with character B String s1 = "Supplement" + 'B'; // s1 becomes SupplementB
  • 25. Programming Errors 25 Syntax Errors Detected by the compiler Runtime Errors Causes the program to abort Logic Errors Produces incorrect result
  • 26. Converting Strings to Integers 26 use the static parseInt method in the Integer class as follows: int intValue = Integer.parseInt(intString); where intString is a numeric string such as “123”.
  • 27. Converting Strings to Doubles 27 use the static parseDouble method in the Double class as follows: double doubleValue =Double.parseDouble(doubleString); where doubleString is a numeric string such as “123.45”.
  • 28. 28 The Two-way if Statement if (boolean-expression) { statement(s)-for-the-true-case; } else { statement(s)-for-the-false-case; } true false Boolean Expression Statement(s) for the true case Statement(s) for the false case
  • 29. if...else Example 29 if (radius >= 0) { area = radius * radius * 3.14159; System.out.println("The area for the “ + “circle of radius " + radius + " is " + area); } else { System.out.println("Negative input"); }
  • 30. Common Errors 30 Adding a semicolon at the end of an if clause is a common mistake. if (radius >= 0); { area = radius*radius*PI; System.out.println( "The area for the circle of radius " + radius + " is " + area); }
  • 31. switch Statements switch (status) { 31 case 0: compute taxes for single filers; break; case 1: compute taxes for married file jointly; break; case 2: compute taxes for married file separately; break; case 3: compute taxes for head of household; break; default: System.out.println("Errors: invalid status"); System.exit(0); }
  • 32. 32 while Loops int count = 0; while (count < 100) { System.out.println("Welcome to Java"); count++; }
  • 33. while Loop Flow Chart 33 int count = 0; while (loop-continuation- condition) { while (count < 100) { // loop-body; System.out.println("Welcome to Java!"); count++; Statement(s); } } count = 0; Loop false false Continuation (count < 100)? Condition? true true Statement(s) System.out.println("Welcome to Java!"); (loop body) count++; (A) (B)
  • 34. do-while Loop 34 Statement(s) (loop body) true Loop Continuation do { Condition? // Loop body; false Statement(s); } while (loop-continuation-condition);
  • 35. for Loops 35 int i; for (initial-action; loop-continuation- for (i = 0; i < 100; condition; action- i++) { after-each-iteration) { System.out.println( // loop body; "Welcome to Statement(s); } Java!"); } Initial-Action i=0 Loop false false Continuation (i < 100)? Condition? true true Statement(s) System.out.println( (loop body) "Welcome to Java"); Action-After-Each-Iteration i++ (A) (B)
  • 36. Review Questions 36 Problems: 1. Wahid just bought himself a set of home theatre. Declare a variables of TV of type String, speakers of type int, price of type double and goodCondition of type boolean. 2. Amir had 5 history books. Declare an array of book he had.