SlideShare uma empresa Scribd logo
1 de 23
JAVA
Prathibha Virtual Classes
Contents
 History of Java
 Tool Need for Java
 Why Java?
 Java Features
 Conclusion
Prathibha Virtual Classes
Prathibha Virtual Classes
Initially developed
by
James Gosling
at
Sun Microsystems
and
released
in
1995.
JAVA
Prathibha Virtual Classes
What is Java?
 Java is a computing platform for application development
and an object-oriented,
 Class-based and Concurrent programming language
 It means many statements can be executed at the same time
instead of sequentially executing it.
 Java can run on all platforms and free to access.
 Important points:
 It is platform-independent
 i.e., java code can be compiled on any operating system
 It supports concurrency
 means the code can be executed by multiple processes at
the same time.
Prathibha Virtual Classes
Tools You Need
 a Pentium 200-MHz computer with a minimum of 64 MB
of RAM (128 MB of RAM recommended).
Software's −
 Linux 7.1 or Windows xp/7/8 operating system
 Java JDK 8
 Microsoft Notepad or any other text editor
Prathibha Virtual Classes
Why is Java so popular?
 Java has become a popular and useful programming
language because of its excellent features, which play a
very important role in contributing to the popularity of
this language.
 The Java features are called “Java Buzz Words”.
 Java is one of the most used programming languages,
which allows the development of various types of
applications that may run on a single machine.
 It is one of the most popular programming languages
around the globe and is introduced to keep running on
any stage consistently.
Prathibha Virtual Classes
JAVA FEATURES
Prathibha Virtual Classes
Simple:
 The Java programming language is easy to learn.
 Java coding style is easy to read and write and eye catching.
 Most of the concepts are drew from C++ thus making Java learning
simpler.
 It contains many features of other Languages like C and C++
 Java removes complexity because it doesn't use pointers and doesn't
support Multiple Inheritance.
Portable:
 Java programs can execute in any environment for which
there is a Java run-time system.(JVM)
 Java programs can be transferred over World Wide Web (e.g Applets)
 Java programs can be run on any platform (Linux, Solaris , Window and Mac)
 In Java, the size of the primitive data types is machine-independent, which
were dependent in C/C++. So, these provisions make Java programs portable.
 Moreover, any changes and updates made in Operating Systems, Processors
and System resources will not enforce any changes in Java programs
Prathibha Virtual Classes
Object-Oriented:
 Java is a true object-oriented language.
 Like C++ java provides most of the object oriented features.
 Unlike C++ which is semi object-oriented, Java is a fully
object-oriented programming language.
 It has all OOP features such as
Abstraction, Encapsulation, inheritance and Polymorphism.
 Almost everything in Java is an object
 All programs code and data reside within objects and
classes
 Java comes with an extensive set of classes
arranged in packages
 For example, we cannot develop an executable program in
Java without making use of the class.
Prathibha Virtual Classes
Robust
 Java is robust as it is capable of handling run-time errors,
supports automatic garbage collection, Exception handling, and
avoids explicit pointer concept.
 Java has a strong memory management system.
 Java is garbage-collected language – JVM automatically deallocates
the memory blocks
 Java has the concept of exception handling which identifies
runtime errors and eliminates them.
Networked
 Java is mainly designed for web based applications.
 Java marks lot of complexity by providing classes for you
that already implements the hard parts, such as
 creating socket connections,
 reading the contents of the URL as a file etc.
 Moreover, J2EE is used for developing network based
applications.
Prathibha Virtual Classes
Platform Independent
 It is the most significant feature of Java .
 Being platform-independent means a program compiled on one
machine can be executed on any machine in the world without any
change.
 Java achieves platform independence by using the concept of
the BYTE code.
 “Write Once, run anywhere” (WORA) slogan for Java comes in,
which means that we can develop applications on one environment
(OS) and run on any other environment without doing any
modification in the code.
Prathibha Virtual Classes
Dynamic and Extensible
 Java is dynamic and extensible means with the help of
OOPs, we can add classes and add new methods to
classes, creating new classes through subclasses.
 This makes it easier for us to expand our own classes and
even modify them.
 Java gives the facility of dynamically linking new class
libraries, methods, and objects.
 Java even supports functions written in other languages
such as C and C++ to be written in Java programs.
 These functions are called “native methods”.
 These methods are dynamically linked at runtime.
Prathibha Virtual Classes
Compiled and Interpreted
 Usually, a computer language can be either compiled or
interpreted. Java integrates the power of Compiled
Languages with the flexibility of Interpreted Languages.
 Java compiler (javac) compiles the java source code into the
byte code.
 Java Virtual Machine (JVM) then executes this byte code
which is executable on many operating systems and is
portable.
Prathibha Virtual Classes
Secure:
 Java is designed with security features built into the language and
runtime system such as static type-checking at compile time and
runtime checking
 It enables to develop virus-free, tamper-free systems.
 Java is a more secure language as compared to C/C++, as it does not
allow a programmer to explicitly create pointers.
 Java supports access modifiers to check memory access and also
ensures that no viruses enter an applet.
 Authentication techniques are based on public-key encryption.
 It has a byte code verifier that checks the code fragments for any
illegal code that violates the access right.
Prathibha Virtual Classes
Architecture-neutral
 Java is not tied to a specific machine or operating system
architecture.
 Machine Independent i.e., Java is independent of
hardware.
 Java compiler generates an architecture-neutral object file
format, which makes the compiled code executable on
many processors, with the presence of Java runtime
system.
Familiar
 Java is familiar because:
 It has a base of familiar languages like C and C++ and contains
many features of these languages.
 It removes the drawbacks, complexities and confusing
elements of C/C++.
 So if you have good knowledge of C/C++, you will find Java
familiar and easy to understand.
Prathibha Virtual Classes
High Performance
 The performance of Java is impressive for an interpreted
language because of its intermediate byte code.
 Java provides high performance with the use of “JIT –
Just In Time compiler”,
 in which the compiler compiles the code on-demand basis,
i.e., it compiles only that method which is being called.
This saves time and makes it more efficient.
 Java architecture is also designed in such a way that it
reduces overheads during runtime.
 The inclusion of multithreading enhances the overall
execution speed of Java programs.
 Byte codes generated by the Java compiler are highly
optimized, so Java Virtual Machine can execute them
much faster.
Prathibha Virtual Classes
Distributed
 Java is distributed because it encourages users to create
distributed applications.
 In Java, we can split a program into many parts and store
these parts on different computers.
 A Java programmer sitting on a machine can access another
program running on the other machine.
 This feature is very helpful when we develop large projects.
 Java was designed with the distributed environment. It has
networking facilities, so it can be transmit, run over
internet.
for example. RMI (Remote Method Invocation) and EJB
(Enterprise Java Beans)are used for creating distributed
applications.
 Java comes with an extensive library of classes for
interacting, using TCP/IP protocols such as HTTP and FTP,
which makes creating network connections much easier than
in C/C++.
 It also enables multiple programmers at many locations to
work together on a single project.
Prathibha Virtual Classes
Multi-threaded and Interactive
 A thread is an independent path of execution within a
program, executing concurrently.
 Multithreaded means handling multiple tasks simultaneously
or executing multiple portions (functions) of the same
program in parallel.
 The code of java is divided into smaller parts and Java
executes them in a sequential and timely manner.
Advantages:
 Maximum utilization of resources is possible.
 It doesn’t occupy memory for each thread. It shares a
common memory area.
 There is no need to wait for the application to finish one
task before beginning another one.
 There is a decreased cost of maintenance. Also, It is time-
saving.
 It improves the performance of complex applications.
Prathibha Virtual Classes
 Java is interactive because its code supports effective CUI
(Character User Interface) and GUI (Graphical User
Interface) programs.
 It greatly improves the interactive performance of graphical
applications.Prathibha Virtual Classes
Conclusion
 In this lesson you learnt about
 What is Java?
 Tools needed for Java
 Java Features
Future Topics
 OOPS Concepts
Prathibha Virtual Classes
Object Oriented Programming Concepts
Prathibha Virtual Classes
Prathibha Virtual Classes

Mais conteúdo relacionado

Mais procurados

Reflection in java
Reflection in javaReflection in java
Reflection in java
upen.rockin
 
Constants, Variables and Data Types in Java
Constants, Variables and Data Types in JavaConstants, Variables and Data Types in Java
Constants, Variables and Data Types in Java
Abhilash Nair
 

Mais procurados (20)

Java Tutorial | Java Programming Tutorial | Java Basics | Java Training | Edu...
Java Tutorial | Java Programming Tutorial | Java Basics | Java Training | Edu...Java Tutorial | Java Programming Tutorial | Java Basics | Java Training | Edu...
Java Tutorial | Java Programming Tutorial | Java Basics | Java Training | Edu...
 
Object Oriented Programming Concepts using Java
Object Oriented Programming Concepts using JavaObject Oriented Programming Concepts using Java
Object Oriented Programming Concepts using Java
 
Control Statements in Java
Control Statements in JavaControl Statements in Java
Control Statements in Java
 
Basic Java Programming
Basic Java ProgrammingBasic Java Programming
Basic Java Programming
 
Java Tutorial For Beginners - Step By Step | Java Basics | Java Certification...
Java Tutorial For Beginners - Step By Step | Java Basics | Java Certification...Java Tutorial For Beginners - Step By Step | Java Basics | Java Certification...
Java Tutorial For Beginners - Step By Step | Java Basics | Java Certification...
 
Operators in java presentation
Operators in java presentationOperators in java presentation
Operators in java presentation
 
Introduction to java
Introduction to java Introduction to java
Introduction to java
 
Java Programming
Java ProgrammingJava Programming
Java Programming
 
Introduction to Java
Introduction to JavaIntroduction to Java
Introduction to Java
 
Java notes
Java notesJava notes
Java notes
 
Java Programming
Java ProgrammingJava Programming
Java Programming
 
Reflection in java
Reflection in javaReflection in java
Reflection in java
 
Java package
Java packageJava package
Java package
 
Java And Multithreading
Java And MultithreadingJava And Multithreading
Java And Multithreading
 
Java
JavaJava
Java
 
Introduction to java
Introduction to javaIntroduction to java
Introduction to java
 
Constants, Variables and Data Types in Java
Constants, Variables and Data Types in JavaConstants, Variables and Data Types in Java
Constants, Variables and Data Types in Java
 
Oops concepts || Object Oriented Programming Concepts in Java
Oops concepts || Object Oriented Programming Concepts in JavaOops concepts || Object Oriented Programming Concepts in Java
Oops concepts || Object Oriented Programming Concepts in Java
 
Exception Handling in JAVA
Exception Handling in JAVAException Handling in JAVA
Exception Handling in JAVA
 
Java & advanced java
Java & advanced javaJava & advanced java
Java & advanced java
 

Semelhante a Java features

Presentación rs232 java
Presentación rs232 javaPresentación rs232 java
Presentación rs232 java
John Rojas
 
Sybsc cs sem 3 core java
Sybsc cs sem 3 core javaSybsc cs sem 3 core java
Sybsc cs sem 3 core java
WE-IT TUTORIALS
 
Chapter 1 introduction to java technology
Chapter 1 introduction to java technologyChapter 1 introduction to java technology
Chapter 1 introduction to java technology
sshhzap
 

Semelhante a Java features (20)

Java ms harsha
Java ms harshaJava ms harsha
Java ms harsha
 
Unit1 JAVA.pptx
Unit1 JAVA.pptxUnit1 JAVA.pptx
Unit1 JAVA.pptx
 
Java part1
Java part1Java part1
Java part1
 
JAVA FEATURES
JAVA FEATURESJAVA FEATURES
JAVA FEATURES
 
Presentación rs232 java
Presentación rs232 javaPresentación rs232 java
Presentación rs232 java
 
0f0cef_1dac552af56c4338ab0672859199e693.pdf
0f0cef_1dac552af56c4338ab0672859199e693.pdf0f0cef_1dac552af56c4338ab0672859199e693.pdf
0f0cef_1dac552af56c4338ab0672859199e693.pdf
 
java introduction.docx
java introduction.docxjava introduction.docx
java introduction.docx
 
Java chapter 1
Java   chapter 1Java   chapter 1
Java chapter 1
 
Java Programming
Java ProgrammingJava Programming
Java Programming
 
Introduction to Java Programming.pdf
Introduction to Java Programming.pdfIntroduction to Java Programming.pdf
Introduction to Java Programming.pdf
 
Sybsc cs sem 3 core java
Sybsc cs sem 3 core javaSybsc cs sem 3 core java
Sybsc cs sem 3 core java
 
130700548484460000
130700548484460000130700548484460000
130700548484460000
 
Chapter 1 introduction to java technology
Chapter 1 introduction to java technologyChapter 1 introduction to java technology
Chapter 1 introduction to java technology
 
Features of java unit 1
Features of java unit 1Features of java unit 1
Features of java unit 1
 
OOPS JAVA.pdf
OOPS JAVA.pdfOOPS JAVA.pdf
OOPS JAVA.pdf
 
Java Intro
Java IntroJava Intro
Java Intro
 
JAVA PROGRAMMING-Unit I - Final PPT.pptx
JAVA PROGRAMMING-Unit I - Final PPT.pptxJAVA PROGRAMMING-Unit I - Final PPT.pptx
JAVA PROGRAMMING-Unit I - Final PPT.pptx
 
JAVA ALL 5 MODULE NOTES.pptx
JAVA ALL 5 MODULE NOTES.pptxJAVA ALL 5 MODULE NOTES.pptx
JAVA ALL 5 MODULE NOTES.pptx
 
Java1
Java1Java1
Java1
 
Java
Java Java
Java
 

Mais de Madishetty Prathibha

Mais de Madishetty Prathibha (13)

Object Oriented programming - Introduction
Object Oriented programming - IntroductionObject Oriented programming - Introduction
Object Oriented programming - Introduction
 
Access modifiers in java
Access modifiers in javaAccess modifiers in java
Access modifiers in java
 
Constructor in java
Constructor in javaConstructor in java
Constructor in java
 
Control statements in java
Control statements in javaControl statements in java
Control statements in java
 
Classes objects in java
Classes objects in javaClasses objects in java
Classes objects in java
 
Structure of java program diff c- cpp and java
Structure of java program  diff c- cpp and javaStructure of java program  diff c- cpp and java
Structure of java program diff c- cpp and java
 
Operators in java
Operators in javaOperators in java
Operators in java
 
Types of datastructures
Types of datastructuresTypes of datastructures
Types of datastructures
 
Introduction to algorithms
Introduction to algorithmsIntroduction to algorithms
Introduction to algorithms
 
Java data types, variables and jvm
Java data types, variables and jvm Java data types, variables and jvm
Java data types, variables and jvm
 
Introduction to data structures (ss)
Introduction to data structures (ss)Introduction to data structures (ss)
Introduction to data structures (ss)
 
Java Tokens
Java  TokensJava  Tokens
Java Tokens
 
Introduction of java
Introduction  of javaIntroduction  of java
Introduction of java
 

Último

Seal of Good Local Governance (SGLG) 2024Final.pptx
Seal of Good Local Governance (SGLG) 2024Final.pptxSeal of Good Local Governance (SGLG) 2024Final.pptx
Seal of Good Local Governance (SGLG) 2024Final.pptx
negromaestrong
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
QucHHunhnh
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptx
heathfieldcps1
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdf
ciinovamais
 

Último (20)

Seal of Good Local Governance (SGLG) 2024Final.pptx
Seal of Good Local Governance (SGLG) 2024Final.pptxSeal of Good Local Governance (SGLG) 2024Final.pptx
Seal of Good Local Governance (SGLG) 2024Final.pptx
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdf
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 
How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
 
How to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POSHow to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POS
 
Micro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfMicro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdf
 
Dyslexia AI Workshop for Slideshare.pptx
Dyslexia AI Workshop for Slideshare.pptxDyslexia AI Workshop for Slideshare.pptx
Dyslexia AI Workshop for Slideshare.pptx
 
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
 
psychiatric nursing HISTORY COLLECTION .docx
psychiatric  nursing HISTORY  COLLECTION  .docxpsychiatric  nursing HISTORY  COLLECTION  .docx
psychiatric nursing HISTORY COLLECTION .docx
 
Sociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning ExhibitSociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning Exhibit
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptx
 
SOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning PresentationSOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning Presentation
 
General Principles of Intellectual Property: Concepts of Intellectual Proper...
General Principles of Intellectual Property: Concepts of Intellectual  Proper...General Principles of Intellectual Property: Concepts of Intellectual  Proper...
General Principles of Intellectual Property: Concepts of Intellectual Proper...
 
Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...
 
ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptx
 
Food safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfFood safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdf
 
This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdf
 
Unit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptxUnit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptx
 

Java features

  • 2. Contents  History of Java  Tool Need for Java  Why Java?  Java Features  Conclusion Prathibha Virtual Classes
  • 4. Initially developed by James Gosling at Sun Microsystems and released in 1995. JAVA Prathibha Virtual Classes
  • 5. What is Java?  Java is a computing platform for application development and an object-oriented,  Class-based and Concurrent programming language  It means many statements can be executed at the same time instead of sequentially executing it.  Java can run on all platforms and free to access.  Important points:  It is platform-independent  i.e., java code can be compiled on any operating system  It supports concurrency  means the code can be executed by multiple processes at the same time. Prathibha Virtual Classes
  • 6. Tools You Need  a Pentium 200-MHz computer with a minimum of 64 MB of RAM (128 MB of RAM recommended). Software's −  Linux 7.1 or Windows xp/7/8 operating system  Java JDK 8  Microsoft Notepad or any other text editor Prathibha Virtual Classes
  • 7. Why is Java so popular?  Java has become a popular and useful programming language because of its excellent features, which play a very important role in contributing to the popularity of this language.  The Java features are called “Java Buzz Words”.  Java is one of the most used programming languages, which allows the development of various types of applications that may run on a single machine.  It is one of the most popular programming languages around the globe and is introduced to keep running on any stage consistently. Prathibha Virtual Classes
  • 9. Simple:  The Java programming language is easy to learn.  Java coding style is easy to read and write and eye catching.  Most of the concepts are drew from C++ thus making Java learning simpler.  It contains many features of other Languages like C and C++  Java removes complexity because it doesn't use pointers and doesn't support Multiple Inheritance. Portable:  Java programs can execute in any environment for which there is a Java run-time system.(JVM)  Java programs can be transferred over World Wide Web (e.g Applets)  Java programs can be run on any platform (Linux, Solaris , Window and Mac)  In Java, the size of the primitive data types is machine-independent, which were dependent in C/C++. So, these provisions make Java programs portable.  Moreover, any changes and updates made in Operating Systems, Processors and System resources will not enforce any changes in Java programs Prathibha Virtual Classes
  • 10. Object-Oriented:  Java is a true object-oriented language.  Like C++ java provides most of the object oriented features.  Unlike C++ which is semi object-oriented, Java is a fully object-oriented programming language.  It has all OOP features such as Abstraction, Encapsulation, inheritance and Polymorphism.  Almost everything in Java is an object  All programs code and data reside within objects and classes  Java comes with an extensive set of classes arranged in packages  For example, we cannot develop an executable program in Java without making use of the class. Prathibha Virtual Classes
  • 11. Robust  Java is robust as it is capable of handling run-time errors, supports automatic garbage collection, Exception handling, and avoids explicit pointer concept.  Java has a strong memory management system.  Java is garbage-collected language – JVM automatically deallocates the memory blocks  Java has the concept of exception handling which identifies runtime errors and eliminates them. Networked  Java is mainly designed for web based applications.  Java marks lot of complexity by providing classes for you that already implements the hard parts, such as  creating socket connections,  reading the contents of the URL as a file etc.  Moreover, J2EE is used for developing network based applications. Prathibha Virtual Classes
  • 12. Platform Independent  It is the most significant feature of Java .  Being platform-independent means a program compiled on one machine can be executed on any machine in the world without any change.  Java achieves platform independence by using the concept of the BYTE code.  “Write Once, run anywhere” (WORA) slogan for Java comes in, which means that we can develop applications on one environment (OS) and run on any other environment without doing any modification in the code. Prathibha Virtual Classes
  • 13. Dynamic and Extensible  Java is dynamic and extensible means with the help of OOPs, we can add classes and add new methods to classes, creating new classes through subclasses.  This makes it easier for us to expand our own classes and even modify them.  Java gives the facility of dynamically linking new class libraries, methods, and objects.  Java even supports functions written in other languages such as C and C++ to be written in Java programs.  These functions are called “native methods”.  These methods are dynamically linked at runtime. Prathibha Virtual Classes
  • 14. Compiled and Interpreted  Usually, a computer language can be either compiled or interpreted. Java integrates the power of Compiled Languages with the flexibility of Interpreted Languages.  Java compiler (javac) compiles the java source code into the byte code.  Java Virtual Machine (JVM) then executes this byte code which is executable on many operating systems and is portable. Prathibha Virtual Classes
  • 15. Secure:  Java is designed with security features built into the language and runtime system such as static type-checking at compile time and runtime checking  It enables to develop virus-free, tamper-free systems.  Java is a more secure language as compared to C/C++, as it does not allow a programmer to explicitly create pointers.  Java supports access modifiers to check memory access and also ensures that no viruses enter an applet.  Authentication techniques are based on public-key encryption.  It has a byte code verifier that checks the code fragments for any illegal code that violates the access right. Prathibha Virtual Classes
  • 16. Architecture-neutral  Java is not tied to a specific machine or operating system architecture.  Machine Independent i.e., Java is independent of hardware.  Java compiler generates an architecture-neutral object file format, which makes the compiled code executable on many processors, with the presence of Java runtime system. Familiar  Java is familiar because:  It has a base of familiar languages like C and C++ and contains many features of these languages.  It removes the drawbacks, complexities and confusing elements of C/C++.  So if you have good knowledge of C/C++, you will find Java familiar and easy to understand. Prathibha Virtual Classes
  • 17. High Performance  The performance of Java is impressive for an interpreted language because of its intermediate byte code.  Java provides high performance with the use of “JIT – Just In Time compiler”,  in which the compiler compiles the code on-demand basis, i.e., it compiles only that method which is being called. This saves time and makes it more efficient.  Java architecture is also designed in such a way that it reduces overheads during runtime.  The inclusion of multithreading enhances the overall execution speed of Java programs.  Byte codes generated by the Java compiler are highly optimized, so Java Virtual Machine can execute them much faster. Prathibha Virtual Classes
  • 18. Distributed  Java is distributed because it encourages users to create distributed applications.  In Java, we can split a program into many parts and store these parts on different computers.  A Java programmer sitting on a machine can access another program running on the other machine.  This feature is very helpful when we develop large projects.  Java was designed with the distributed environment. It has networking facilities, so it can be transmit, run over internet. for example. RMI (Remote Method Invocation) and EJB (Enterprise Java Beans)are used for creating distributed applications.  Java comes with an extensive library of classes for interacting, using TCP/IP protocols such as HTTP and FTP, which makes creating network connections much easier than in C/C++.  It also enables multiple programmers at many locations to work together on a single project. Prathibha Virtual Classes
  • 19. Multi-threaded and Interactive  A thread is an independent path of execution within a program, executing concurrently.  Multithreaded means handling multiple tasks simultaneously or executing multiple portions (functions) of the same program in parallel.  The code of java is divided into smaller parts and Java executes them in a sequential and timely manner. Advantages:  Maximum utilization of resources is possible.  It doesn’t occupy memory for each thread. It shares a common memory area.  There is no need to wait for the application to finish one task before beginning another one.  There is a decreased cost of maintenance. Also, It is time- saving.  It improves the performance of complex applications. Prathibha Virtual Classes
  • 20.  Java is interactive because its code supports effective CUI (Character User Interface) and GUI (Graphical User Interface) programs.  It greatly improves the interactive performance of graphical applications.Prathibha Virtual Classes
  • 21. Conclusion  In this lesson you learnt about  What is Java?  Tools needed for Java  Java Features Future Topics  OOPS Concepts Prathibha Virtual Classes
  • 22. Object Oriented Programming Concepts Prathibha Virtual Classes