SlideShare a Scribd company logo
Introduction to Java
Objectives At the end of the lesson, the student should be able to: ● Describe the features of Java technology such as the Java virtual machine (JVM), garbage collection (GC) and code security ● Describe the different phases of a Java program
Java Background: History ● Java – The original motivation for Java ● The need for platform independent language that could be embedded in various consumer electronic products like toasters and refrigerators. – One of the first projects developed using Java ● a personal hand-held remote control named Star 7. – At about the same time, the World Wide Web and the Internet were gaining popularity. Gosling et. al. realized that Java could be used for Internet programming.
Java Background: What is Java Technology? ● The Java technology is: – A programming language – A development environment – An application environment – A deployment environment
Java Technology: Programming Language ● As a programming language, Java can create all kinds of applications that you could create using any conventional programming language.
Java Technology: A Development Environment ●  As a development environment, Java technology provides you with a large suite of tools: –  A compiler (javac) –  An interpreter (java) –  A documentation generator (javadoc) –  A class file packaging tool and so on...
Java Technology: An Application and Runtime Environment ● Java technology applications are typically general-purpose programs that run on any machine where the Java runtime environment (JRE) is installed. ● There are two main deployment environments: 1. The JRE supplied by the Java 2 Software Development Kit (SDK) contains the complete set of class files for all the Java technology packages, which includes basic language classes, GUI component classes, and so on. 2. The other main deployment environment is on your web browser. Most commercial browsers supply a Java technology interpreter and runtime environment.
Java Features ● Some features of Java: – The Java Virtual Machine – Garbage Collection – Code Security
Java Features: The Java Virtual Machine ●  Java Virtual Machine (JVM) –  an imaginary machine that is implemented by emulating software on a real machine –  provides the hardware platform specifications to which you compile all Java technology code ●  Bytecode –  a special machine language that can be understood by the Java Virtual Machine (JVM) –  independent of any particular computer hardware, so any computer with a Java interpreter can execute the compiled Java program, no matter what type of computer the program was compiled on
Java Features: Garbage Collection ●  Garbage collection thread –  responsible for freeing any memory that can be freed. This happens automatically during the lifetime of the Java program. –  programmer is freed from the burden of having to deallocate that memory themselves
Java Features: Code Security ●  Code security is attained in Java through the implementation of its Java Runtime Environment (JRE). ●  JRE –  runs code compiled for a JVM and performs class loading (through the class loader), code verification (through the bytecode verifier) and finally code execution
Java Features: Code Security ● Class Loader – responsible for loading all classes needed for the Java program – adds security by separating the namespaces for the classes of the local file system from those that are imported from network sources – After loading all the classes, the memory layout of the executable is then determined. This adds protection against unauthorized access to restricted areas of the code since the memory layout is determined during runtime
Java Features: Code Security ●  Bytecode verifier –  tests the format of the code fragments and checks the code fragments for illegal code that can violate access rights to objects
Phases of a Java Program ● The following figure describes the process of compiling and executing a Java program
Phases of a Java Program
Summary ● Java Background – History – Java Technology ● A programming language, development environment, application environment and deployment environment – Java Features ● Java Virtual machine, garbage collection and code security ● Phases of a Java Program – Write, compile, run

More Related Content

Viewers also liked (6)

PPTX
The Sichuan Earthquake
IsabellaSwan1987
 
PDF
Stribe The Geeks on a Plane Paris 2009
Megan Dahlgren
 
PDF
Kwaga Presentation the Geeks on a Plane Paris September 2009
Megan Dahlgren
 
PPT
3(1)
雅慧 呂
 
PPT
2 Getting To Know Your Programing Environment
dM Technologies
 
PDF
Silentale the Geeks on a Plane Paris 2009
Megan Dahlgren
 
The Sichuan Earthquake
IsabellaSwan1987
 
Stribe The Geeks on a Plane Paris 2009
Megan Dahlgren
 
Kwaga Presentation the Geeks on a Plane Paris September 2009
Megan Dahlgren
 
2 Getting To Know Your Programing Environment
dM Technologies
 
Silentale the Geeks on a Plane Paris 2009
Megan Dahlgren
 

Similar to 1 Introduction To Java Technology (20)

PPT
A begineers guide of JAVA - Getting Started
Rakesh Madugula
 
PPTX
JAVA PROGRAM CONSTRUCTS OR LANGUAGE BASICS.pptx
AALIM MUHAMMED SALEGH COLLEGE OF ENGINEERING
 
PPTX
JAVAPart1_BasicIntroduction.pptx
Murugesh33
 
PPTX
JAVA_Day1_BasicIntroduction.pptx
Murugesh33
 
PDF
What is-java
Shahid Rasheed
 
PPTX
The Java Story
David Parsons
 
PPTX
Object Oriented Programming Part 1 of Unit 1
VigneshkumarPonnusam1
 
PPTX
Introduction to java
Java Lover
 
PPTX
Java chapter 1 basic introduction Unit-1.pptx
noosdysharma
 
PPTX
java basics concepts and the keywords needed
PriyadharshiniG41
 
PPTX
Chapter 1 (1).pptx
krishnashah277578
 
PDF
Lec 3 01_aug13
Palak Sanghani
 
PPT
J2ee strutswithhibernate-140121221332-phpapp01
Jay Palit
 
PPT
Java-java virtual machine
Surbhi Panhalkar
 
PPTX
Chapter-1 Introduction.pptx
SumanBhandari40
 
PDF
Java programming Evolution-OverviewOfJava.pdf
AbhishekSingh961152
 
PPTX
Basics of JAVA programming
Elizabeth Thomas
 
PDF
Java Concepts and Features-Programming in Java
jasminebeulahg
 
PPTX
Unit1 introduction to Java
DevaKumari Vijay
 
PPTX
basic core java up to operator
kamal kotecha
 
A begineers guide of JAVA - Getting Started
Rakesh Madugula
 
JAVA PROGRAM CONSTRUCTS OR LANGUAGE BASICS.pptx
AALIM MUHAMMED SALEGH COLLEGE OF ENGINEERING
 
JAVAPart1_BasicIntroduction.pptx
Murugesh33
 
JAVA_Day1_BasicIntroduction.pptx
Murugesh33
 
What is-java
Shahid Rasheed
 
The Java Story
David Parsons
 
Object Oriented Programming Part 1 of Unit 1
VigneshkumarPonnusam1
 
Introduction to java
Java Lover
 
Java chapter 1 basic introduction Unit-1.pptx
noosdysharma
 
java basics concepts and the keywords needed
PriyadharshiniG41
 
Chapter 1 (1).pptx
krishnashah277578
 
Lec 3 01_aug13
Palak Sanghani
 
J2ee strutswithhibernate-140121221332-phpapp01
Jay Palit
 
Java-java virtual machine
Surbhi Panhalkar
 
Chapter-1 Introduction.pptx
SumanBhandari40
 
Java programming Evolution-OverviewOfJava.pdf
AbhishekSingh961152
 
Basics of JAVA programming
Elizabeth Thomas
 
Java Concepts and Features-Programming in Java
jasminebeulahg
 
Unit1 introduction to Java
DevaKumari Vijay
 
basic core java up to operator
kamal kotecha
 
Ad

Recently uploaded (20)

PDF
DevBcn - Building 10x Organizations Using Modern Productivity Metrics
Justin Reock
 
PDF
Log-Based Anomaly Detection: Enhancing System Reliability with Machine Learning
Mohammed BEKKOUCHE
 
PPTX
AUTOMATION AND ROBOTICS IN PHARMA INDUSTRY.pptx
sameeraaabegumm
 
PPTX
Building Search Using OpenSearch: Limitations and Workarounds
Sease
 
PDF
Windsurf Meetup Ottawa 2025-07-12 - Planning Mode at Reliza.pdf
Pavel Shukhman
 
PDF
Blockchain Transactions Explained For Everyone
CIFDAQ
 
PPTX
Top iOS App Development Company in the USA for Innovative Apps
SynapseIndia
 
PDF
Python basic programing language for automation
DanialHabibi2
 
PDF
Empower Inclusion Through Accessible Java Applications
Ana-Maria Mihalceanu
 
PDF
SWEBOK Guide and Software Services Engineering Education
Hironori Washizaki
 
PDF
Newgen Beyond Frankenstein_Build vs Buy_Digital_version.pdf
darshakparmar
 
PDF
Timothy Rottach - Ramp up on AI Use Cases, from Vector Search to AI Agents wi...
AWS Chicago
 
PPTX
MSP360 Backup Scheduling and Retention Best Practices.pptx
MSP360
 
PDF
NewMind AI - Journal 100 Insights After The 100th Issue
NewMind AI
 
PDF
"Beyond English: Navigating the Challenges of Building a Ukrainian-language R...
Fwdays
 
PDF
Exolore The Essential AI Tools in 2025.pdf
Srinivasan M
 
PPTX
UiPath Academic Alliance Educator Panels: Session 2 - Business Analyst Content
DianaGray10
 
PDF
Newgen 2022-Forrester Newgen TEI_13 05 2022-The-Total-Economic-Impact-Newgen-...
darshakparmar
 
PDF
LLMs.txt: Easily Control How AI Crawls Your Site
Keploy
 
PDF
Reverse Engineering of Security Products: Developing an Advanced Microsoft De...
nwbxhhcyjv
 
DevBcn - Building 10x Organizations Using Modern Productivity Metrics
Justin Reock
 
Log-Based Anomaly Detection: Enhancing System Reliability with Machine Learning
Mohammed BEKKOUCHE
 
AUTOMATION AND ROBOTICS IN PHARMA INDUSTRY.pptx
sameeraaabegumm
 
Building Search Using OpenSearch: Limitations and Workarounds
Sease
 
Windsurf Meetup Ottawa 2025-07-12 - Planning Mode at Reliza.pdf
Pavel Shukhman
 
Blockchain Transactions Explained For Everyone
CIFDAQ
 
Top iOS App Development Company in the USA for Innovative Apps
SynapseIndia
 
Python basic programing language for automation
DanialHabibi2
 
Empower Inclusion Through Accessible Java Applications
Ana-Maria Mihalceanu
 
SWEBOK Guide and Software Services Engineering Education
Hironori Washizaki
 
Newgen Beyond Frankenstein_Build vs Buy_Digital_version.pdf
darshakparmar
 
Timothy Rottach - Ramp up on AI Use Cases, from Vector Search to AI Agents wi...
AWS Chicago
 
MSP360 Backup Scheduling and Retention Best Practices.pptx
MSP360
 
NewMind AI - Journal 100 Insights After The 100th Issue
NewMind AI
 
"Beyond English: Navigating the Challenges of Building a Ukrainian-language R...
Fwdays
 
Exolore The Essential AI Tools in 2025.pdf
Srinivasan M
 
UiPath Academic Alliance Educator Panels: Session 2 - Business Analyst Content
DianaGray10
 
Newgen 2022-Forrester Newgen TEI_13 05 2022-The-Total-Economic-Impact-Newgen-...
darshakparmar
 
LLMs.txt: Easily Control How AI Crawls Your Site
Keploy
 
Reverse Engineering of Security Products: Developing an Advanced Microsoft De...
nwbxhhcyjv
 
Ad

1 Introduction To Java Technology

  • 2. Objectives At the end of the lesson, the student should be able to: ● Describe the features of Java technology such as the Java virtual machine (JVM), garbage collection (GC) and code security ● Describe the different phases of a Java program
  • 3. Java Background: History ● Java – The original motivation for Java ● The need for platform independent language that could be embedded in various consumer electronic products like toasters and refrigerators. – One of the first projects developed using Java ● a personal hand-held remote control named Star 7. – At about the same time, the World Wide Web and the Internet were gaining popularity. Gosling et. al. realized that Java could be used for Internet programming.
  • 4. Java Background: What is Java Technology? ● The Java technology is: – A programming language – A development environment – An application environment – A deployment environment
  • 5. Java Technology: Programming Language ● As a programming language, Java can create all kinds of applications that you could create using any conventional programming language.
  • 6. Java Technology: A Development Environment ● As a development environment, Java technology provides you with a large suite of tools: – A compiler (javac) – An interpreter (java) – A documentation generator (javadoc) – A class file packaging tool and so on...
  • 7. Java Technology: An Application and Runtime Environment ● Java technology applications are typically general-purpose programs that run on any machine where the Java runtime environment (JRE) is installed. ● There are two main deployment environments: 1. The JRE supplied by the Java 2 Software Development Kit (SDK) contains the complete set of class files for all the Java technology packages, which includes basic language classes, GUI component classes, and so on. 2. The other main deployment environment is on your web browser. Most commercial browsers supply a Java technology interpreter and runtime environment.
  • 8. Java Features ● Some features of Java: – The Java Virtual Machine – Garbage Collection – Code Security
  • 9. Java Features: The Java Virtual Machine ● Java Virtual Machine (JVM) – an imaginary machine that is implemented by emulating software on a real machine – provides the hardware platform specifications to which you compile all Java technology code ● Bytecode – a special machine language that can be understood by the Java Virtual Machine (JVM) – independent of any particular computer hardware, so any computer with a Java interpreter can execute the compiled Java program, no matter what type of computer the program was compiled on
  • 10. Java Features: Garbage Collection ● Garbage collection thread – responsible for freeing any memory that can be freed. This happens automatically during the lifetime of the Java program. – programmer is freed from the burden of having to deallocate that memory themselves
  • 11. Java Features: Code Security ● Code security is attained in Java through the implementation of its Java Runtime Environment (JRE). ● JRE – runs code compiled for a JVM and performs class loading (through the class loader), code verification (through the bytecode verifier) and finally code execution
  • 12. Java Features: Code Security ● Class Loader – responsible for loading all classes needed for the Java program – adds security by separating the namespaces for the classes of the local file system from those that are imported from network sources – After loading all the classes, the memory layout of the executable is then determined. This adds protection against unauthorized access to restricted areas of the code since the memory layout is determined during runtime
  • 13. Java Features: Code Security ● Bytecode verifier – tests the format of the code fragments and checks the code fragments for illegal code that can violate access rights to objects
  • 14. Phases of a Java Program ● The following figure describes the process of compiling and executing a Java program
  • 15. Phases of a Java Program
  • 16. Summary ● Java Background – History – Java Technology ● A programming language, development environment, application environment and deployment environment – Java Features ● Java Virtual machine, garbage collection and code security ● Phases of a Java Program – Write, compile, run