Course Description
          
    
  Course Aims and objectives
      
    
  Course outlines
      
    
  Text book and references
      
    
  Prerequisite
      
    
  Grading policy
      
    
  Instructors and office hours
      
    
  Syllabus
      
    
  Time table
      
    
  Lecture Notes
      
    
  Attached Files
      
    
  Previous Exams
      
    	
		   Course Description
		  
			
    
  | This course introduces JAVA programming language as a computer programming language with object-oriented principles. Emphasis is placed on event-driven programming methods, including creating and manipulating objects, classes, and using object-oriented tools. Moreover, it explains the different relationship between classes such as composition, inheritance, and Polymorphism. | 
    	
                    
                    
                 
                
            
                
		   Course Aims  And Objective
		  
			
    
  | WHEN YOU SUCCESSFULLY COMPLETE THIS COURSE, YOU WILL BE ABLE TO: 1. Contrast procedural languages with object-oriented languages 2. Write, compile, and execute a JAVA program 3. Describe the main features of the JAVA language 4. Use variables and constants 5. Do arithmetic operations 6. Create interactive Java programs 7. Create and use methods 8. Create and use JAVA classes and objects 9. Use pre-written methods and classes 10. Design and use various logic structures 11. Use nested statements 12. Use logical and conditional operators 13. Use shortcut arithmetic operators 14. Describe and use arrays 15. Use string objects and methods 16. Design and write JAVA applets 17. Explain event-driven programming 18. Create and use GUI objects within a JAVA program 19. Explain the applet life cycle 20. Create and use superclasses and subclasse; | 
    	 
                    
                    
                 
                
              
                
     
        Course Outline
          
              
          
				
              
    
  | Introduction to Java Applications | |
| * A simple program: Printing a Line of Text. * Another Java Application: Adding Integers. * Memory Concepts. * Arithmetic. * Decision Making: Equality and Relational Operators. | |
| Control Structures: Part 1 | |
| * Control Structures. * The if Selection Structure. * The if/else Selection Structure. * The while Repetition Structure. * Formulating Algorithms: Case Study 1 (Counter-Controlled Repetition). * Formulating Algorithms with Top-Down, Stepwise Refinement: Case Study 2 (Sentinel-Controlled Repetition) . * Formulating Algorithms with Top-Down, Stepwise Refinement: Case Study 3 (Nested Control Structures). * Assignment Operators. * Increment and Decreement Operators. * Primitive Data Types. | |
| Control Structures: Part 2 | |
| * Essentials of Counter-Control Repetition. * The for Repetition Structure. * Examples using the for Structure. * The switch Multiple-Selection Structure. * The do/while Repetition Structure. * The break and continue Statements. * Logical Operators. | |
| Methods: A Deeper Look | |
| * Program Modules in Java. * static Methods, static Fields and Class Math * Declaring Methods with Multiple Parameters. * Method Definitions and Using. * Java API Packages. * Random Number Generation. * Example: A Game of Chance. * Scope Rules. * Method OverLoading. * Methods of Class JApplet. | |
| Arrays | |
| * Arrays. * Declaring and Creating Arrays. * Examples Using Arrays. *Enhanced for statement. * Passing Arrays to Methods. * Multiple-Subscribed Arrays. | |
| Object-Based Programming: Inheritance | |
| * Superclasses and Subclasses. * Protected Members. * Relationship between Superclass Objects and Subclass Objects. * Constructors in subclasses. | |
| Object-Oriented Programming: Polymorphism | |
| * Polymorphism Examples. * Abstract classes and methods. * Case Study: A Payroll System Using Polymorphism. * final Methods and Classes. * Case Study: Creating and Using Interfaces. | |
| Classes and Objects: A Deeper Look | |
| * Controlling Access to Members. * This Reference. * Using Overloaded Constructors. * Default and No-Argument Constructors. * Using set and get Methods. * Garbage Collection and Method Finalize. * Static Class Members. * static Import. * Final Instance Variables. *Data Abstraction and Encapsulation. * Creating Packages. * Package Access. | |
| Introduction to Classes and Objects | |
| * Classes, Objects, Methods and Instance Variables. * Declaring a Class. * Declaring a Method in a Class. * Instance Variables, set Methods and get Methods. * Primitive Types vs. Reference Types. * Initializing Objects with Constructors. * Floating-Point Numbers and Type double. | |
| introduction to computers | |
| • General understanding of the Java programming language. • What you need to start working with java. • What are the java programming phases. • What are the main differences between java and c++. | |
| Introduction to Java Applications | |
| Introduction to Java Applications • First application Program. • Compiling and running Java applications. • Using Dialog Boxes and Input Boxes. • Arithmetic Operations and Java Operators. | |
| Control Statements | |
| • Sequence Structure. • Selection Structure. • Repetition Structure. | |
| Introduction to Java Applets | |
| • Sample Java Applet. • Drawing Strings and Lines. • Adding float Numbers. • Resources for Applets. | |
| Methods | |
| • Program Modules in Java. • Math-Class Methods. • Java API Packages. • Recursion. | |
| Arrays | |
| • Declaring and Creating Arrays. • Passing Arrays to Methods. • Multidimensional Arrays. | |
| Object-Based Programming | |
| • Abstract Data Type Classes. • Scopes. • Using this Reference. • Using set and get Methods. • Static Class Members | |
| Object–Oriented Programming | |
| • Relationships among objects. • Polymorphism examples. • Abstract classes and methods. • Final methods and classes. | 
    	Text book and references
          
            
           
   
  | The Main Book | |
| Title | Java How to program, Sixth Edition. By H.M. Deitel & P.J. Deitel | 
| Author(s) | |
| Edition | Sixth | 
| Publisher | Prentice | 
    		901210
    
  
    	
         
                    
                    
                 
                
                  
                      
                  
                
					
					Grading Policy
					
				       
             
    
  | Activity | Weight | 
    	
                                        Instructors And Office Hours
                                        
                                            
    
  | The Instructors of the Course | |
| Name: | جهاد قبيل عوده النهود | 
| Office Hours: | sunday:Tuesday:- 11:30-12:300 Monday: Wednesday:- 11:00-12:00 | 
| Office Phone: | 3362 | 
| Instrcutor Mail: | jehad@aabu.edu.jo | 
                                        
                                        Miscellaneous
				 
                                     
    
  
 
                    
                    
 
         
             
         
                
                   
                Time Table
          
            
         	
    
  | Subject | Hours | |
| Getting Started | 3 | |
| Introduction to Java Applications | 3 | |
| Introduction to Classes and Objects | 3 | |
| Control Structures: Part 1 | 6 | |
| Control Structures: Part 2 | 6 | |
| Methods: A Deeper Look | 6 | |
| Arrays | 6 | |
| Classes and Objects: A Deeper Look | 6 | |
| Object-Based Programming: Inheritance | 6 | |
| Object-Oriented Programming: Polymorphism | 3 | 
| Attachment Files | ||
| syl-java.pdf | View | |
	
      Previous Exams
      
          
    
  | Previous Exams |