SlideShare a Scribd company logo
Course Title: Programming with Java
What is Java?
• Java is a general-purpose computer programming
language that is concurrent, class-based, object-
oriented, and specifically designed to have as few
implementation dependencies as possible.
• It is intended to let application developers "write once,
run anywhere" (WORA), meaning that compiled Java
code can run on all platforms that support Java without
the need for recompilation.
• Java applications are typically compiled to bytecode
that can run on any Java virtual machine (JVM)
regardless of computer architecture.
Major features
• Designed by : James Gosling and Sun
Microsystems. The language was initially called
Oak after an oak tree .
• Developer : Oracle Corporation
• Stable release : Java Standard Edition 8 Update
60 (1.8.0_60) / August 18, 2015
• Implementation language: C and C++
• OS : Cross-platform (multi-platform)
• Filename extensions: .java , .class, .jar (Java
Archive)
WORA/ WORE
• "Write once, run anywhere" (WORA), or sometimes
write once, run everywhere (WORE)
• Ideally, this means Java can be developed on any
device, compiled into a standard bytecode and be
expected to run on any device equipped with a Java
virtual machine (JVM).
• The installation of a JVM or Java interpreter on chips,
devices or software packages has become an industry
standard practice.
• This means a programmer can develop code on a PC
and can expect it to run on Java enabled cell phones, as
well as on routers and mainframes equipped with Java,
without any adjustments.
What is Bytecode in Java ?
• Bytecode is nothing but the intermediate representation of
Java source code which is produced by the Java compiler by
compiling that source code.
• This byte code is an machine independent code.
• It is not completely a compiled code but it is an
intermediate code somewhere in the middle which is later
interpreted and executed by JVM.
• Bytecode is a machine code for JVM.
• But the machine code is platform specific whereas
bytecode is platform independent that is the main
difference between them.
• It is stored in .class file which is created after compiling the
source code.
What is Bytecode in Java ?
Java applet
• An applet is a special kind of Java program that is
designed to be transmitted over the internet and
automatically executed by a Java compatible web
browser.
• A Java applet is a small application which is
written in Java and delivered to users in the form
of bytecode.
• The user launches the Java applet from a web
page, and the applet is then executed within a
Java Virtual Machine (JVM) in a process separate
from the web browser itself.
Java applet
• A Java applet can appear in a frame of the web
page, a new application window, Sun's
AppletViewer, or a stand-alone tool for testing
applets. Java applets were introduced in the first
version of the Java language, which was released
in 1995.
• Java applets can be written in any programming
language that compiles to Java bytecode. They
are usually written in Java, but other languages
such as Jython,JRuby,Pascal,Scala, or Eiffel (via
SmartEiffel) may be used as well.
Principles
There were five primary goals in the creation of the
Java language:
• It must be "simple, object-oriented, and familiar".
• It must be "robust and secure".
• It must be "architecture-neutral and portable".
• It must execute with "high performance".
• It must be "interpreted, threaded, and dynamic".
Java Buzzwords
• Simple
• Secure
• Portable
• Object oriented
• Robust
• Multithreaded
• Architecture neutral
• Interpreted
• High performance
• Distributed
• Dynamic
Java Buzzwords
• Simple:
•Easy to learn
•Easy to write programs using Java
•More expressive.
•Most of the complex or confusing features in
C++ are removed in Java like pointers etc..
Java Buzzwords
• Secure:
•Java provides data security through
encapsulation.
•Also we can write applets in Java which provides
security.
•An applet is a small program which can be
downloaded from one computer to another
automatically.
•There is no need to worry about applets
accessing the system resources which may
compromise security.
Java Buzzwords
• Portable:
•Applications written using Java are portable
in the sense that they can be executed on any
kind of computer containing any CPU or any
operating system.
•When an application written in Java is
compiled, it generates an intermediate code
file called as “bytecode”.
•Bytecode helps Java to achieve portability.
Java Buzzwords
• Object - Oriented:
•Java follows object oriented model.
•So, it supports all the features of object
oriented model like:
Encapsulation
Inheritance
Polymorphism
Abstraction
Java Buzzwords
• Robust:
•A program or an application is said to be
robust(reliable) when it is able to give some
response in any kind of context.
•Some of those features are:
1. Type checking
2. Exception handling
Java Buzzwords
• Multithreaded:
•Java supports multithreading which is not
supported by C and C++.
•A thread is a light weight process.
•Multithreading increases CPU efficiency.
•A program can be divided into several threads
and each thread can be executed concurrently or
in parallel with the other threads.
•Real world example for multithreading is
computer. While we are listening to music, at
the same time we can write in a word document
or play a game.
Java Buzzwords
• Architecture - Neutral:
•Bytecode helps Java to achieve portability.
•Bytecode can be executed on computers
having any kind of operating system or any
kind of CPU.
•Since Java applications can run on any kind of
CPU, Java is architecture – neutral.
Java Buzzwords
• Interpreted and High Performance:
•In Java 1.0 version there is an interpreter for
executing the bytecode. As interpreter is quite
slow when compared to a compiler, java
programs used to execute slowly.
•After Java 1.0 version the interpreter was
replaced with JIT(Just-In-Time) compiler.
•This enhances the program performance
means it executes rapidly.
Java Buzzwords
• Distributed:
•Java supports distributed computation using
Remote Method Invocation (RMI) concept.
•The server and client(s) can communicate
with one another and the computations can
be divided among several computers which
makes the programs to execute rapidly.
•In distributed systems, resources are shared.
Java Buzzwords
• Dynamic:
•The Java Virtual Machine(JVM) maintains a
lot of runtime information about the program
and the objects in the program.
•Libraries are dynamically linked during
runtime.
•So, even if you make dynamic changes to
pieces of code, the program is not effected.
How Java achieved Platform
Independency ?
How Java achieved Platform
Independency ?
• Java achieved platform independency by
moving machine language generation from
compilation phase to execution phase by
introducing bytecodes and JVM.
How Java achieved Platform
Independency ?
How Java achieved Platform
Independency ?
What is the most important feature of
Java?
• Java is a platform independent language. This
is most important feature of Java language.
Platform independent language means
programs written in Java will work on any
computer that has Java installed on it,
regardless of operating system.
• Whereas Multithreading, AWT and Event
Handling, Networking, Database Connection
are important features of java.
Types of Java Software
• Java software is divided into two sub products
• 1) jdk (Java Development Kit)
• 2) jre (Java Run time Environment)
• jdk has both "Compiler + JVM"
• jre has only "JVM"
• JVM is a sub-part of jre and jre is a sub-part of jdk. So
in order to run any java application jre software is
sufficient but if we need to compile and execute the
java program we have to install jdk software.
Types of Java Software
This diagram shows the difference between jdk,jre and JVM.
Thanks for your patience.
Ad

More Related Content

What's hot (19)

Introduction to java
Introduction to javaIntroduction to java
Introduction to java
Krunali Gandhi
 
Java history 01
Java history 01Java history 01
Java history 01
University of Potsdam
 
Java presentation
Java presentation Java presentation
Java presentation
Programming Talents
 
Important features of java
Important features of javaImportant features of java
Important features of java
AL- AMIN
 
Java Presentation
Java PresentationJava Presentation
Java Presentation
Amr Salah
 
Java Presentation
 Java Presentation Java Presentation
Java Presentation
Marq2014
 
Java introduction
Java introductionJava introduction
Java introduction
NAVEENA ESWARAN
 
Lec 3 01_aug13
Lec 3 01_aug13Lec 3 01_aug13
Lec 3 01_aug13
Palak Sanghani
 
Java features
Java featuresJava features
Java features
myrajendra
 
The Evolution of Java
The Evolution of JavaThe Evolution of Java
The Evolution of Java
Fu Cheng
 
Basic javaprogramming(session1)
Basic javaprogramming(session1)Basic javaprogramming(session1)
Basic javaprogramming(session1)
Barm Bannasan
 
Java 1
Java 1Java 1
Java 1
KadarkaraiSelvam
 
JAVA FEATURES
JAVA FEATURESJAVA FEATURES
JAVA FEATURES
shalinikarunakaran1
 
itft-Java evolution
itft-Java evolutionitft-Java evolution
itft-Java evolution
Atul Sehdev
 
Java (1)
Java (1)Java (1)
Java (1)
Samraiz Tejani
 
Presentation5
Presentation5Presentation5
Presentation5
Natasha Bains
 
History of Java 1/2
History of Java 1/2History of Java 1/2
History of Java 1/2
Eberhard Wolff
 
Java fundamentals
Java fundamentalsJava fundamentals
Java fundamentals
Om Ganesh
 
Chapter 1 java
Chapter 1 java Chapter 1 java
Chapter 1 java
Ahmad sohail Kakar
 

Viewers also liked (16)

ServiceFabric-Arch
ServiceFabric-ArchServiceFabric-Arch
ServiceFabric-Arch
Saravanan G
 
Cardiology Personal Statement and Guide for Fellows in 2017
Cardiology Personal Statement and Guide for Fellows in 2017Cardiology Personal Statement and Guide for Fellows in 2017
Cardiology Personal Statement and Guide for Fellows in 2017
Cardiology Fellowships
 
KSC GLOBAL SOLUTIONS
KSC GLOBAL SOLUTIONSKSC GLOBAL SOLUTIONS
KSC GLOBAL SOLUTIONS
KSC Global
 
1 java introduction
1 java introduction1 java introduction
1 java introduction
abdullah al mahamud rosi
 
WindowsAzureIAAS
WindowsAzureIAASWindowsAzureIAAS
WindowsAzureIAAS
Saravanan G
 
Σημειώσεις wordpress
Σημειώσεις wordpressΣημειώσεις wordpress
Σημειώσεις wordpress
George Spais
 
WindowsAzureSDK1.7
WindowsAzureSDK1.7WindowsAzureSDK1.7
WindowsAzureSDK1.7
Saravanan G
 
Wcat
WcatWcat
Wcat
Saravanan G
 
PowerShell-2
PowerShell-2PowerShell-2
PowerShell-2
Saravanan G
 
#_ varible function
#_ varible function #_ varible function
#_ varible function
abdullah al mahamud rosi
 
PowerShell-1
PowerShell-1PowerShell-1
PowerShell-1
Saravanan G
 
airento
airentoairento
airento
marrenz molato
 
AzureDocumentDB
AzureDocumentDBAzureDocumentDB
AzureDocumentDB
Saravanan G
 
Windows Azure Marketplace
Windows Azure MarketplaceWindows Azure Marketplace
Windows Azure Marketplace
Saravanan G
 
Plano de aula
Plano de aulaPlano de aula
Plano de aula
Guterres05
 
Plano de aula
Plano de aulaPlano de aula
Plano de aula
Guterres05
 
Ad

Similar to 1 java intro (20)

Introduction to Core Java feature and its characteristics
Introduction to Core Java feature and its characteristicsIntroduction to Core Java feature and its characteristics
Introduction to Core Java feature and its characteristics
rashmishekhar81
 
Java buzzwords
Java buzzwordsJava buzzwords
Java buzzwords
ramesh517
 
Computer Basics: Computer introductions for beginners
Computer Basics: Computer introductions for beginnersComputer Basics: Computer introductions for beginners
Computer Basics: Computer introductions for beginners
PrabaKaran656400
 
JAVA PROGRAM CONSTRUCTS OR LANGUAGE BASICS.pptx
JAVA PROGRAM CONSTRUCTS OR LANGUAGE BASICS.pptxJAVA PROGRAM CONSTRUCTS OR LANGUAGE BASICS.pptx
JAVA PROGRAM CONSTRUCTS OR LANGUAGE BASICS.pptx
AALIM MUHAMMED SALEGH COLLEGE OF ENGINEERING
 
Java Ch 1.pptx
Java Ch 1.pptxJava Ch 1.pptx
Java Ch 1.pptx
VanitaPatil14
 
Java Introduction
Java IntroductionJava Introduction
Java Introduction
sunmitraeducation
 
Introduction To Java history, application, features.pptx
Introduction To Java history, application, features.pptxIntroduction To Java history, application, features.pptx
Introduction To Java history, application, features.pptx
sonalipatil225940
 
1. JAVA_Module_1-edited - AJIN ABRAHAM.pptx.pdf
1. JAVA_Module_1-edited - AJIN ABRAHAM.pptx.pdf1. JAVA_Module_1-edited - AJIN ABRAHAM.pptx.pdf
1. JAVA_Module_1-edited - AJIN ABRAHAM.pptx.pdf
10322210023
 
PPS Java Overview Unit I.ppt
PPS Java Overview Unit I.pptPPS Java Overview Unit I.ppt
PPS Java Overview Unit I.ppt
CDSukte
 
PPS Java Overview Unit I.ppt
PPS Java Overview Unit I.pptPPS Java Overview Unit I.ppt
PPS Java Overview Unit I.ppt
RajeshSukte1
 
Object Oriented concept-JAVA-Module-1-PPT.pptx
Object Oriented concept-JAVA-Module-1-PPT.pptxObject Oriented concept-JAVA-Module-1-PPT.pptx
Object Oriented concept-JAVA-Module-1-PPT.pptx
ASHWINIGOWDA46
 
unit1.pptx
unit1.pptxunit1.pptx
unit1.pptx
PrasadKalal4
 
basic core java up to operator
basic core java up to operatorbasic core java up to operator
basic core java up to operator
kamal kotecha
 
Object Oriented Programming Part 1 of Unit 1
Object Oriented Programming Part 1 of Unit 1Object Oriented Programming Part 1 of Unit 1
Object Oriented Programming Part 1 of Unit 1
VigneshkumarPonnusam1
 
Introduction to Java
Introduction to JavaIntroduction to Java
Introduction to Java
Soumya Suman
 
1.Intro--Why Java.pptx
1.Intro--Why Java.pptx1.Intro--Why Java.pptx
1.Intro--Why Java.pptx
YounasKhan542109
 
Java chapter 1 basic introduction Unit-1.pptx
Java chapter  1 basic introduction Unit-1.pptxJava chapter  1 basic introduction Unit-1.pptx
Java chapter 1 basic introduction Unit-1.pptx
noosdysharma
 
Chapter-1 Introduction.pptx
Chapter-1 Introduction.pptxChapter-1 Introduction.pptx
Chapter-1 Introduction.pptx
SumanBhandari40
 
java basics concepts and the keywords needed
java basics concepts and the keywords neededjava basics concepts and the keywords needed
java basics concepts and the keywords needed
PriyadharshiniG41
 
Introduction to java
Introduction to java Introduction to java
Introduction to java
Java Lover
 
Introduction to Core Java feature and its characteristics
Introduction to Core Java feature and its characteristicsIntroduction to Core Java feature and its characteristics
Introduction to Core Java feature and its characteristics
rashmishekhar81
 
Java buzzwords
Java buzzwordsJava buzzwords
Java buzzwords
ramesh517
 
Computer Basics: Computer introductions for beginners
Computer Basics: Computer introductions for beginnersComputer Basics: Computer introductions for beginners
Computer Basics: Computer introductions for beginners
PrabaKaran656400
 
Introduction To Java history, application, features.pptx
Introduction To Java history, application, features.pptxIntroduction To Java history, application, features.pptx
Introduction To Java history, application, features.pptx
sonalipatil225940
 
1. JAVA_Module_1-edited - AJIN ABRAHAM.pptx.pdf
1. JAVA_Module_1-edited - AJIN ABRAHAM.pptx.pdf1. JAVA_Module_1-edited - AJIN ABRAHAM.pptx.pdf
1. JAVA_Module_1-edited - AJIN ABRAHAM.pptx.pdf
10322210023
 
PPS Java Overview Unit I.ppt
PPS Java Overview Unit I.pptPPS Java Overview Unit I.ppt
PPS Java Overview Unit I.ppt
CDSukte
 
PPS Java Overview Unit I.ppt
PPS Java Overview Unit I.pptPPS Java Overview Unit I.ppt
PPS Java Overview Unit I.ppt
RajeshSukte1
 
Object Oriented concept-JAVA-Module-1-PPT.pptx
Object Oriented concept-JAVA-Module-1-PPT.pptxObject Oriented concept-JAVA-Module-1-PPT.pptx
Object Oriented concept-JAVA-Module-1-PPT.pptx
ASHWINIGOWDA46
 
basic core java up to operator
basic core java up to operatorbasic core java up to operator
basic core java up to operator
kamal kotecha
 
Object Oriented Programming Part 1 of Unit 1
Object Oriented Programming Part 1 of Unit 1Object Oriented Programming Part 1 of Unit 1
Object Oriented Programming Part 1 of Unit 1
VigneshkumarPonnusam1
 
Introduction to Java
Introduction to JavaIntroduction to Java
Introduction to Java
Soumya Suman
 
Java chapter 1 basic introduction Unit-1.pptx
Java chapter  1 basic introduction Unit-1.pptxJava chapter  1 basic introduction Unit-1.pptx
Java chapter 1 basic introduction Unit-1.pptx
noosdysharma
 
Chapter-1 Introduction.pptx
Chapter-1 Introduction.pptxChapter-1 Introduction.pptx
Chapter-1 Introduction.pptx
SumanBhandari40
 
java basics concepts and the keywords needed
java basics concepts and the keywords neededjava basics concepts and the keywords needed
java basics concepts and the keywords needed
PriyadharshiniG41
 
Introduction to java
Introduction to java Introduction to java
Introduction to java
Java Lover
 
Ad

Recently uploaded (20)

Agents chapter of Artificial intelligence
Agents chapter of Artificial intelligenceAgents chapter of Artificial intelligence
Agents chapter of Artificial intelligence
DebdeepMukherjee9
 
Understanding Structural Loads and Load Paths
Understanding Structural Loads and Load PathsUnderstanding Structural Loads and Load Paths
Understanding Structural Loads and Load Paths
University of Kirkuk
 
SICPA: Fabien Keller - background introduction
SICPA: Fabien Keller - background introductionSICPA: Fabien Keller - background introduction
SICPA: Fabien Keller - background introduction
fabienklr
 
Redirects Unraveled: From Lost Links to Rickrolls
Redirects Unraveled: From Lost Links to RickrollsRedirects Unraveled: From Lost Links to Rickrolls
Redirects Unraveled: From Lost Links to Rickrolls
Kritika Garg
 
Autodesk Fusion 2025 Tutorial: User Interface
Autodesk Fusion 2025 Tutorial: User InterfaceAutodesk Fusion 2025 Tutorial: User Interface
Autodesk Fusion 2025 Tutorial: User Interface
Atif Razi
 
Frontend Architecture Diagram/Guide For Frontend Engineers
Frontend Architecture Diagram/Guide For Frontend EngineersFrontend Architecture Diagram/Guide For Frontend Engineers
Frontend Architecture Diagram/Guide For Frontend Engineers
Michael Hertzberg
 
ATAL 6 Days Online FDP Scheme Document 2025-26.pdf
ATAL 6 Days Online FDP Scheme Document 2025-26.pdfATAL 6 Days Online FDP Scheme Document 2025-26.pdf
ATAL 6 Days Online FDP Scheme Document 2025-26.pdf
ssuserda39791
 
Artificial intelligence and machine learning.pptx
Artificial intelligence and machine learning.pptxArtificial intelligence and machine learning.pptx
Artificial intelligence and machine learning.pptx
rakshanatarajan005
 
Machine Learning basics POWERPOINT PRESENETATION
Machine Learning basics POWERPOINT PRESENETATIONMachine Learning basics POWERPOINT PRESENETATION
Machine Learning basics POWERPOINT PRESENETATION
DarrinBright1
 
Working with USDOT UTCs: From Conception to Implementation
Working with USDOT UTCs: From Conception to ImplementationWorking with USDOT UTCs: From Conception to Implementation
Working with USDOT UTCs: From Conception to Implementation
Alabama Transportation Assistance Program
 
seninarppt.pptx1bhjiikjhggghjykoirgjuyhhhjj
seninarppt.pptx1bhjiikjhggghjykoirgjuyhhhjjseninarppt.pptx1bhjiikjhggghjykoirgjuyhhhjj
seninarppt.pptx1bhjiikjhggghjykoirgjuyhhhjj
AjijahamadKhaji
 
Lecture - 7 Canals of the topic of the civil engineering
Lecture - 7  Canals of the topic of the civil engineeringLecture - 7  Canals of the topic of the civil engineering
Lecture - 7 Canals of the topic of the civil engineering
MJawadkhan1
 
Machine foundation notes for civil engineering students
Machine foundation notes for civil engineering studentsMachine foundation notes for civil engineering students
Machine foundation notes for civil engineering students
DYPCET
 
Dynamics of Structures with Uncertain Properties.pptx
Dynamics of Structures with Uncertain Properties.pptxDynamics of Structures with Uncertain Properties.pptx
Dynamics of Structures with Uncertain Properties.pptx
University of Glasgow
 
hypermedia_system_revisit_roy_fielding .
hypermedia_system_revisit_roy_fielding .hypermedia_system_revisit_roy_fielding .
hypermedia_system_revisit_roy_fielding .
NABLAS株式会社
 
Efficient Algorithms for Isogeny Computation on Hyperelliptic Curves: Their A...
Efficient Algorithms for Isogeny Computation on Hyperelliptic Curves: Their A...Efficient Algorithms for Isogeny Computation on Hyperelliptic Curves: Their A...
Efficient Algorithms for Isogeny Computation on Hyperelliptic Curves: Their A...
IJCNCJournal
 
Analog electronic circuits with some imp
Analog electronic circuits with some impAnalog electronic circuits with some imp
Analog electronic circuits with some imp
KarthikTG7
 
Prediction of Flexural Strength of Concrete Produced by Using Pozzolanic Mate...
Prediction of Flexural Strength of Concrete Produced by Using Pozzolanic Mate...Prediction of Flexural Strength of Concrete Produced by Using Pozzolanic Mate...
Prediction of Flexural Strength of Concrete Produced by Using Pozzolanic Mate...
Journal of Soft Computing in Civil Engineering
 
Evonik Overview Visiomer Specialty Methacrylates.pdf
Evonik Overview Visiomer Specialty Methacrylates.pdfEvonik Overview Visiomer Specialty Methacrylates.pdf
Evonik Overview Visiomer Specialty Methacrylates.pdf
szhang13
 
6th International Conference on Big Data, Machine Learning and IoT (BMLI 2025)
6th International Conference on Big Data, Machine Learning and IoT (BMLI 2025)6th International Conference on Big Data, Machine Learning and IoT (BMLI 2025)
6th International Conference on Big Data, Machine Learning and IoT (BMLI 2025)
ijflsjournal087
 
Agents chapter of Artificial intelligence
Agents chapter of Artificial intelligenceAgents chapter of Artificial intelligence
Agents chapter of Artificial intelligence
DebdeepMukherjee9
 
Understanding Structural Loads and Load Paths
Understanding Structural Loads and Load PathsUnderstanding Structural Loads and Load Paths
Understanding Structural Loads and Load Paths
University of Kirkuk
 
SICPA: Fabien Keller - background introduction
SICPA: Fabien Keller - background introductionSICPA: Fabien Keller - background introduction
SICPA: Fabien Keller - background introduction
fabienklr
 
Redirects Unraveled: From Lost Links to Rickrolls
Redirects Unraveled: From Lost Links to RickrollsRedirects Unraveled: From Lost Links to Rickrolls
Redirects Unraveled: From Lost Links to Rickrolls
Kritika Garg
 
Autodesk Fusion 2025 Tutorial: User Interface
Autodesk Fusion 2025 Tutorial: User InterfaceAutodesk Fusion 2025 Tutorial: User Interface
Autodesk Fusion 2025 Tutorial: User Interface
Atif Razi
 
Frontend Architecture Diagram/Guide For Frontend Engineers
Frontend Architecture Diagram/Guide For Frontend EngineersFrontend Architecture Diagram/Guide For Frontend Engineers
Frontend Architecture Diagram/Guide For Frontend Engineers
Michael Hertzberg
 
ATAL 6 Days Online FDP Scheme Document 2025-26.pdf
ATAL 6 Days Online FDP Scheme Document 2025-26.pdfATAL 6 Days Online FDP Scheme Document 2025-26.pdf
ATAL 6 Days Online FDP Scheme Document 2025-26.pdf
ssuserda39791
 
Artificial intelligence and machine learning.pptx
Artificial intelligence and machine learning.pptxArtificial intelligence and machine learning.pptx
Artificial intelligence and machine learning.pptx
rakshanatarajan005
 
Machine Learning basics POWERPOINT PRESENETATION
Machine Learning basics POWERPOINT PRESENETATIONMachine Learning basics POWERPOINT PRESENETATION
Machine Learning basics POWERPOINT PRESENETATION
DarrinBright1
 
seninarppt.pptx1bhjiikjhggghjykoirgjuyhhhjj
seninarppt.pptx1bhjiikjhggghjykoirgjuyhhhjjseninarppt.pptx1bhjiikjhggghjykoirgjuyhhhjj
seninarppt.pptx1bhjiikjhggghjykoirgjuyhhhjj
AjijahamadKhaji
 
Lecture - 7 Canals of the topic of the civil engineering
Lecture - 7  Canals of the topic of the civil engineeringLecture - 7  Canals of the topic of the civil engineering
Lecture - 7 Canals of the topic of the civil engineering
MJawadkhan1
 
Machine foundation notes for civil engineering students
Machine foundation notes for civil engineering studentsMachine foundation notes for civil engineering students
Machine foundation notes for civil engineering students
DYPCET
 
Dynamics of Structures with Uncertain Properties.pptx
Dynamics of Structures with Uncertain Properties.pptxDynamics of Structures with Uncertain Properties.pptx
Dynamics of Structures with Uncertain Properties.pptx
University of Glasgow
 
hypermedia_system_revisit_roy_fielding .
hypermedia_system_revisit_roy_fielding .hypermedia_system_revisit_roy_fielding .
hypermedia_system_revisit_roy_fielding .
NABLAS株式会社
 
Efficient Algorithms for Isogeny Computation on Hyperelliptic Curves: Their A...
Efficient Algorithms for Isogeny Computation on Hyperelliptic Curves: Their A...Efficient Algorithms for Isogeny Computation on Hyperelliptic Curves: Their A...
Efficient Algorithms for Isogeny Computation on Hyperelliptic Curves: Their A...
IJCNCJournal
 
Analog electronic circuits with some imp
Analog electronic circuits with some impAnalog electronic circuits with some imp
Analog electronic circuits with some imp
KarthikTG7
 
Evonik Overview Visiomer Specialty Methacrylates.pdf
Evonik Overview Visiomer Specialty Methacrylates.pdfEvonik Overview Visiomer Specialty Methacrylates.pdf
Evonik Overview Visiomer Specialty Methacrylates.pdf
szhang13
 
6th International Conference on Big Data, Machine Learning and IoT (BMLI 2025)
6th International Conference on Big Data, Machine Learning and IoT (BMLI 2025)6th International Conference on Big Data, Machine Learning and IoT (BMLI 2025)
6th International Conference on Big Data, Machine Learning and IoT (BMLI 2025)
ijflsjournal087
 

1 java intro

  • 2. What is Java? • Java is a general-purpose computer programming language that is concurrent, class-based, object- oriented, and specifically designed to have as few implementation dependencies as possible. • It is intended to let application developers "write once, run anywhere" (WORA), meaning that compiled Java code can run on all platforms that support Java without the need for recompilation. • Java applications are typically compiled to bytecode that can run on any Java virtual machine (JVM) regardless of computer architecture.
  • 3. Major features • Designed by : James Gosling and Sun Microsystems. The language was initially called Oak after an oak tree . • Developer : Oracle Corporation • Stable release : Java Standard Edition 8 Update 60 (1.8.0_60) / August 18, 2015 • Implementation language: C and C++ • OS : Cross-platform (multi-platform) • Filename extensions: .java , .class, .jar (Java Archive)
  • 4. WORA/ WORE • "Write once, run anywhere" (WORA), or sometimes write once, run everywhere (WORE) • Ideally, this means Java can be developed on any device, compiled into a standard bytecode and be expected to run on any device equipped with a Java virtual machine (JVM). • The installation of a JVM or Java interpreter on chips, devices or software packages has become an industry standard practice. • This means a programmer can develop code on a PC and can expect it to run on Java enabled cell phones, as well as on routers and mainframes equipped with Java, without any adjustments.
  • 5. What is Bytecode in Java ? • Bytecode is nothing but the intermediate representation of Java source code which is produced by the Java compiler by compiling that source code. • This byte code is an machine independent code. • It is not completely a compiled code but it is an intermediate code somewhere in the middle which is later interpreted and executed by JVM. • Bytecode is a machine code for JVM. • But the machine code is platform specific whereas bytecode is platform independent that is the main difference between them. • It is stored in .class file which is created after compiling the source code.
  • 6. What is Bytecode in Java ?
  • 7. Java applet • An applet is a special kind of Java program that is designed to be transmitted over the internet and automatically executed by a Java compatible web browser. • A Java applet is a small application which is written in Java and delivered to users in the form of bytecode. • The user launches the Java applet from a web page, and the applet is then executed within a Java Virtual Machine (JVM) in a process separate from the web browser itself.
  • 8. Java applet • A Java applet can appear in a frame of the web page, a new application window, Sun's AppletViewer, or a stand-alone tool for testing applets. Java applets were introduced in the first version of the Java language, which was released in 1995. • Java applets can be written in any programming language that compiles to Java bytecode. They are usually written in Java, but other languages such as Jython,JRuby,Pascal,Scala, or Eiffel (via SmartEiffel) may be used as well.
  • 9. Principles There were five primary goals in the creation of the Java language: • It must be "simple, object-oriented, and familiar". • It must be "robust and secure". • It must be "architecture-neutral and portable". • It must execute with "high performance". • It must be "interpreted, threaded, and dynamic".
  • 10. Java Buzzwords • Simple • Secure • Portable • Object oriented • Robust • Multithreaded • Architecture neutral • Interpreted • High performance • Distributed • Dynamic
  • 11. Java Buzzwords • Simple: •Easy to learn •Easy to write programs using Java •More expressive. •Most of the complex or confusing features in C++ are removed in Java like pointers etc..
  • 12. Java Buzzwords • Secure: •Java provides data security through encapsulation. •Also we can write applets in Java which provides security. •An applet is a small program which can be downloaded from one computer to another automatically. •There is no need to worry about applets accessing the system resources which may compromise security.
  • 13. Java Buzzwords • Portable: •Applications written using Java are portable in the sense that they can be executed on any kind of computer containing any CPU or any operating system. •When an application written in Java is compiled, it generates an intermediate code file called as “bytecode”. •Bytecode helps Java to achieve portability.
  • 14. Java Buzzwords • Object - Oriented: •Java follows object oriented model. •So, it supports all the features of object oriented model like: Encapsulation Inheritance Polymorphism Abstraction
  • 15. Java Buzzwords • Robust: •A program or an application is said to be robust(reliable) when it is able to give some response in any kind of context. •Some of those features are: 1. Type checking 2. Exception handling
  • 16. Java Buzzwords • Multithreaded: •Java supports multithreading which is not supported by C and C++. •A thread is a light weight process. •Multithreading increases CPU efficiency. •A program can be divided into several threads and each thread can be executed concurrently or in parallel with the other threads. •Real world example for multithreading is computer. While we are listening to music, at the same time we can write in a word document or play a game.
  • 17. Java Buzzwords • Architecture - Neutral: •Bytecode helps Java to achieve portability. •Bytecode can be executed on computers having any kind of operating system or any kind of CPU. •Since Java applications can run on any kind of CPU, Java is architecture – neutral.
  • 18. Java Buzzwords • Interpreted and High Performance: •In Java 1.0 version there is an interpreter for executing the bytecode. As interpreter is quite slow when compared to a compiler, java programs used to execute slowly. •After Java 1.0 version the interpreter was replaced with JIT(Just-In-Time) compiler. •This enhances the program performance means it executes rapidly.
  • 19. Java Buzzwords • Distributed: •Java supports distributed computation using Remote Method Invocation (RMI) concept. •The server and client(s) can communicate with one another and the computations can be divided among several computers which makes the programs to execute rapidly. •In distributed systems, resources are shared.
  • 20. Java Buzzwords • Dynamic: •The Java Virtual Machine(JVM) maintains a lot of runtime information about the program and the objects in the program. •Libraries are dynamically linked during runtime. •So, even if you make dynamic changes to pieces of code, the program is not effected.
  • 21. How Java achieved Platform Independency ?
  • 22. How Java achieved Platform Independency ? • Java achieved platform independency by moving machine language generation from compilation phase to execution phase by introducing bytecodes and JVM.
  • 23. How Java achieved Platform Independency ?
  • 24. How Java achieved Platform Independency ?
  • 25. What is the most important feature of Java? • Java is a platform independent language. This is most important feature of Java language. Platform independent language means programs written in Java will work on any computer that has Java installed on it, regardless of operating system. • Whereas Multithreading, AWT and Event Handling, Networking, Database Connection are important features of java.
  • 26. Types of Java Software • Java software is divided into two sub products • 1) jdk (Java Development Kit) • 2) jre (Java Run time Environment) • jdk has both "Compiler + JVM" • jre has only "JVM" • JVM is a sub-part of jre and jre is a sub-part of jdk. So in order to run any java application jre software is sufficient but if we need to compile and execute the java program we have to install jdk software.
  • 27. Types of Java Software This diagram shows the difference between jdk,jre and JVM.
  • 28. Thanks for your patience.
  翻译: