Java session01

1,391
-1

Published on

Published in: Technology, News & Politics
0 Comments
11 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,391
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
0
Comments
0
Likes
11
Embeds 0
No embeds

No notes for slide

Java session01

  1. 1. Java Programming LanguageObjectives • In this session, you will learn to: Describe the key features of Java technology Write, compile, and run a simple Java technology application Describe the function of the Java Virtual Machine Define garbage collection List the three tasks performed by the Java platform that handle code security Define modeling concepts: abstraction, encapsulation, and packages Discuss why you can reuse Java technology application code Define class, member, attribute, method, constructor, and package Use the access modifiers private and public as appropriate for the guidelines of encapsulation Ver. 1.0 Session 1 Slide 1 of 31
  2. 2. Java Programming LanguageObjectives (Contd.) Invoke a method on a particular object Use the Java technology Application Programming Interface online documentation Ver. 1.0 Session 1 Slide 2 of 31
  3. 3. Java Programming LanguageKey Features of Java Technology A programming language A development environment An application environment A deployment environment Java Technology is used for developing both applets and applications. Ver. 1.0 Session 1 Slide 3 of 31
  4. 4. Java Programming LanguagePrimary Goals of the Java Technology Provides an easy-to-use language by: Avoiding many pitfalls of other languages Being object-oriented Enables code streamlining Provides an interpreted environment for: Improved speed of development Code portability Loads classes dynamically, i.e., at the time they are actually needed Supports changing programs dynamically during runtime by loading classes from distinct sources Furnishes better security Enable users to run more than one thread of an activity Ver. 1.0 Session 1 Slide 4 of 31
  5. 5. Java Programming LanguagePrimary Features of the Java Technology The Java Virtual Machine (JVM™) Garbage collection The Java Runtime Environment (JRE) JVM tool interface Ver. 1.0 Session 1 Slide 5 of 31
  6. 6. Java Programming LanguageThe Java Virtual Machine JVM provides definitions for the: Instruction set (Central Processing Unit [CPU]) Register set Class file format Runtime stack Garbage-collected heap Memory area Fatal error reporting mechanism High-precision timing support Ver. 1.0 Session 1 Slide 6 of 31
  7. 7. Java Programming LanguageGarbage Collection Garbage collection has the following characteristics: Checks for and frees memory no longer needed, automatically. Provides a system-level thread to track memory allocation. Ver. 1.0 Session 1 Slide 7 of 31
  8. 8. Java Programming LanguageThe Java Runtime Environment • The Java application environment performs as follows: Ver. 1.0 Session 1 Slide 8 of 31
  9. 9. Java Programming LanguageJVM™ Tasks The JVM performs three main tasks: Loads code – Performed by the class loader. Verifies code – Performed by the bytecode verifier. Executes code – Performed by the runtime interpreter. Ver. 1.0 Session 1 Slide 9 of 31
  10. 10. Java Programming LanguageThe Class Loader Loads all classes necessary for the execution of a program. Maintains classes of the local file system in separate namespaces. Avoids execution of the program whose bytecode has been changed illegally. Ver. 1.0 Session 1 Slide 10 of 31
  11. 11. Java Programming LanguageThe Bytecode Verifier All class files imported across the network pass through the bytecode verifier, which ensures that: The code adheres to the JVM specification. The code does not violate system integrity. The code causes no operand stack overflows or underflows. The parameter types for all operational code are correct. No illegal data conversions (the conversion of integers to pointers) have occurred. Ver. 1.0 Session 1 Slide 11 of 31
  12. 12. Java Programming LanguageJava Technology Runtime Environment Ver. 1.0 Session 1 Slide 12 of 31
  13. 13. Java Programming LanguageA simple Java Application Let see how to create a simple Java Application. Ver. 1.0 Session 1 Slide 13 of 31
  14. 14. Java Programming LanguageThe Analysis and Design Phase Analysis describes what the system needs to do: Modeling the real-world, including actors and activities, objects, and behaviors. Design describes how the system does it: Modeling the relationships and interactions between objects and actors in the system. Finding useful abstractions to help simplify the problem or solution. Ver. 1.0 Session 1 Slide 14 of 31
  15. 15. Java Programming LanguageDeclaring Java Technology Classes Basic syntax of a Java class: <modifier>* class <class_name> { <attribute_declaration>* <constructor_declaration>* <method_declaration>* } Example: public class MyFirstClass { private int age; public void setAge(int value) { age = value; } } Ver. 1.0 Session 1 Slide 15 of 31
  16. 16. Java Programming LanguageDeclaring Attributes Basic syntax of an attribute: <modifier>* <type> <name> [ = <initial_value>]; Example: public class MyFirstClass { private int x; private float y = 10000.0F; private String name = “NIIT"; } Ver. 1.0 Session 1 Slide 16 of 31
  17. 17. Java Programming LanguageDeclaring Methods Basic syntax of a method: <modifier>* <return_type> <name> ( <argument>* ){ <statement>* } Example: public class Dog { private int weight; public int getWeight() { return weight; } public void setWeight(int newWeight) { if ( newWeight > 0 ) { weight = newWeight; } } } Ver. 1.0 Session 1 Slide 17 of 31
  18. 18. Java Programming LanguageAccessing Object Members To access object members, including attributes and methods, dot notation is used The dot notation is: <object>.<member> Examples: d.setWeight(42); d.weight = 42; // only permissible if weight is public Ver. 1.0 Session 1 Slide 18 of 31
  19. 19. Java Programming LanguageClass Representation Using UML • Class representation of MyDate class: MyDate Class name -day : int -month : int Attributes -year : int +getDay() +getMonth() +getYear() Methods +setDay(int) : boolean +setMonth(int) : boolean +setYear(int) : boolean Ver. 1.0 Session 1 Slide 19 of 31
  20. 20. Java Programming LanguageAbstraction Abstraction means ignoring the non-essential details of an object and concentrating on its essential details. Ver. 1.0 Session 1 Slide 20 of 31
  21. 21. Java Programming LanguageEncapsulation Encapsulation provides data representation flexibility by: Hiding the implementation details of a class. Forcing the user to use an interface to access data. Making the code more maintainable. Ver. 1.0 Session 1 Slide 21 of 31
  22. 22. Java Programming LanguageDeclaring Constructors • A constructor is a set of instructions designed to initialize an instance. • Basic syntax of a constructor: [<modifier>] <class_name> ( <argument>* ) { <statement>* } Example: public class Dog { private int weight; public Dog() { weight = 42; } } Ver. 1.0 Session 1 Slide 22 of 31
  23. 23. Java Programming LanguageThe Default Constructor There is always at least one constructor in every class. If the programmer does not supply any constructor, the default constructor is present automatically. The characteristics of default constructor: – The default constructor takes no arguments. – The default constructor body is empty. – The default constructor enables you to create object instances with new xyz() without having to write a constructor. Ver. 1.0 Session 1 Slide 23 of 31
  24. 24. Java Programming LanguageSource File Layout Basic syntax of a Java source file: [<package_declaration>] <import_declaration>* <class_declaration>+ For example, the VehicleCapacityReport.java file can be written as: package shipping.reports; import shipping.domain.*; import java.util.List; import java.io.*; public class VehicleCapacityReport { private List vehicles; public void generateReport(Writer output) {...} } Ver. 1.0 Session 1 Slide 24 of 31
  25. 25. Java Programming LanguageSoftware Packages • Packages help manage large software systems. • Packages can contain classes and sub-packages. Ver. 1.0 Session 1 Slide 25 of 31
  26. 26. Java Programming LanguageSoftware Packages (Contd.) Basic syntax of the import statement: import <pkg_name>[.<sub_pkg_name>]*.<class_name>; or import <pkg_name>[.<sub_pkg_name>]*.*; Examples: import java.util.List; import java.io.*; import shipping.gui.reportscreens.*; The import statement does the following: Precedes all class declarations Tells the compiler where to find classes Ver. 1.0 Session 1 Slide 26 of 31
  27. 27. Java Programming LanguageDeployment In order to deploy an application without manipulating the user’s CLASSPATH environment variable, create an executable Java Archive (JAR) File. To deploy library code in a JAR file, copy the JAR file into the ext subdirectory of the lib directory in the main directory of the JRE. Ver. 1.0 Session 1 Slide 27 of 31
  28. 28. Java Programming LanguageUsing the Java Technology API Documentation The main sections of a class document include the following: – The class hierarchy – A description of the class and its general purpose – A list of attributes – A list of constructors – A list of methods – A detailed list of attributes with descriptions – A detailed list of constructors with descriptions and formal parameter lists – A detailed list of methods with descriptions and formal parameter lists Ver. 1.0 Session 1 Slide 28 of 31
  29. 29. Java Programming LanguageSummary In this session, you learned that: The key features of Java technology include: • A programming language • A development environment • An application environment • A deployment environment JVM can be defined as an imaginary machine that is implemented by emulating it in software on a real machine. Java source files are compiled, get converted into a bytecode file. At runtime, the bytecodes are loaded, checked, and run in an interpreter. Garbage collector checks for and frees memory no longer needed, automatically. Ver. 1.0 Session 1 Slide 29 of 31
  30. 30. Java Programming LanguageSummary (Contd.) The three main tasks performed by the JVM include: • Loads code • Verifies code • Executes code There are five primary workflows in a software development project: Requirement capture, Analysis, Design, Implementation, and Test. Abstraction means ignoring the non-essential details of an object and concentrating on its essential details. Encapsulation provides data representation flexibility by hiding the implementation details of a class. The Java technology class can be declared by using the declaration: <modifier> * class <class name> The declaration of a Java object attribute can be done as: <modifier> * <type> <name> Ver. 1.0 Session 1 Slide 30 of 31
  31. 31. Java Programming LanguageSummary (Contd.) The definition of methods can be done as: <modifier> * <return type> <name> (<argument> *) – The dot operator enables you to access non-private attribute and method members of a class. – A constructor is a set of instructions designed to initialize an instance of a class. – The Java technology programming language provides the package statement as a way to group related classes. – The import statement tells the compiler where to find the classes which are grouped in packages. – The Java technology API consists of a set of HTML files. This documentation has a hierarchical layout, where the home page lists all the packages as hyperlinks. Ver. 1.0 Session 1 Slide 31 of 31

×