In this core java training session, you will learn Elements of Java programming. Topics covered in this session are:
• Quick review of some important concepts from last class
• History of Java
• JDK and JRE
• Byte Code and JVM (Java Virtual Machine)
• Platform Independence
• Principles of Object Oriented Programming
• Writing your first Java Application
• Elements of Java programming language
• Built in Data Types
• Conditional Statements
• Loops
For more information about this course visit on this link: https://www.mindsmapped.com/courses/software-development/learn-java-fundamentals-hands-on-training-on-core-java-concepts/
Introduction to Java Programming, Basic Structure, variables Data type, input...Mr. Akaash
This is First Lecture of java Programming which cover all basic points (ie. History and feature of java, Introduction to java, about variables data type and compilation....
Introduction to Java Programming, Basic Structure, variables Data type, input...Mr. Akaash
This is First Lecture of java Programming which cover all basic points (ie. History and feature of java, Introduction to java, about variables data type and compilation....
Here I discuss about Java programming language and easiest way to solve programming problem. Java basic syntax and their uses are described briefly so that anyone can easily understand within very short time. If anyone follow the slide with proper way,I assure that he or she will find java programming interesting.
In this core java training session, you will learn Handling Arrays in Java. Topics covered in this session are:
• Autoboxing and Unboxing in Java
• Handling Arrays
For more information about this course visit on this link: https://www.mindsmapped.com/courses/software-development/learn-java-fundamentals-hands-on-training-on-core-java-concepts/
In this core java training session, you will learn get introduction to Java. Topics covered in this session are:
• History of Java – A Programmer’s Perspective
• Salient Features of Java
• Major Java Editions
For more information about this course visit on this link: https://www.mindsmapped.com/courses/software-development/learn-java-fundamentals-hands-on-training-on-core-java-concepts/
Mahika Tutorials sharing PPT slide for core java programming language. Go threw this slide and visit our YouTube page too
https://www.youtube.com/c/mahikatutorials
A presentation on core java. in this ppt there are all the basic informations on the core java suvh as-
Features of Java
Java Program Translation
Java Virtual Machine
Java system overview
Java Program-Development phase
Advantage of java
Disadvantage of java
Project
In this session you will learn:
1. Principles of Object-Oriented Programming
2. Writing your first Java Application
3. Elements of Java programming language
4. Built in Data Types
5. Conditional Statements
6. Loops
Here I discuss about Java programming language and easiest way to solve programming problem. Java basic syntax and their uses are described briefly so that anyone can easily understand within very short time. If anyone follow the slide with proper way,I assure that he or she will find java programming interesting.
In this core java training session, you will learn Handling Arrays in Java. Topics covered in this session are:
• Autoboxing and Unboxing in Java
• Handling Arrays
For more information about this course visit on this link: https://www.mindsmapped.com/courses/software-development/learn-java-fundamentals-hands-on-training-on-core-java-concepts/
In this core java training session, you will learn get introduction to Java. Topics covered in this session are:
• History of Java – A Programmer’s Perspective
• Salient Features of Java
• Major Java Editions
For more information about this course visit on this link: https://www.mindsmapped.com/courses/software-development/learn-java-fundamentals-hands-on-training-on-core-java-concepts/
Mahika Tutorials sharing PPT slide for core java programming language. Go threw this slide and visit our YouTube page too
https://www.youtube.com/c/mahikatutorials
A presentation on core java. in this ppt there are all the basic informations on the core java suvh as-
Features of Java
Java Program Translation
Java Virtual Machine
Java system overview
Java Program-Development phase
Advantage of java
Disadvantage of java
Project
In this session you will learn:
1. Principles of Object-Oriented Programming
2. Writing your first Java Application
3. Elements of Java programming language
4. Built in Data Types
5. Conditional Statements
6. Loops
This program is designed for the use of LibraryManagement System and its functioning Main Objective of this project to facilitate the transactions through use of electronic medium. We use java netbeans 6.5.1 software and Mysql to programming our project.
In this Java Spring Training session, you will learn Spring MVC. Topics covered in this session are:
For more information, visit this link:
• Spring framework
• Inversion of Control
• Dependency Injection – Two types
• Defining beans using XML
• Inheriting beans
• Auto-wiring
• Annotations based configuration
• Java based configuration
• Spring AOP
https://www.mindsmapped.com/courses/software-development/spring-fundamentals-learn-spring-framework-and-spring-boot/
In this Java Spring Training session, you will learn Spring AOP – Aspect Oriented Programming Topics covered in this session are:
For more information, visit this link:
• Auto-wiring
• Annotations based configuration
• Java based configuration
https://www.mindsmapped.com/courses/software-development/spring-fundamentals-learn-spring-framework-and-spring-boot/
Spring - Part 2 - Autowiring, Annotations, Java based Configuration - slidesHitesh-Java
In this Java Spring Training session, you will learn Spring AOP – Aspect Oriented Programming. Topics covered in this session are:
For more information, visit this link:
• Spring framework
• Inversion of Control
• Dependency Injection – Two types
• Defining beans using XML
• Inheriting beans
• Auto-wiring
• Annotations based configuration
• Java based configuration
https://www.mindsmapped.com/courses/software-development/spring-fundamentals-learn-spring-framework-and-spring-boot/
In this Java Spring Training session, you will learn Spring – Inversion of Control, Dependency Injection and Bean definitions. Topics covered in this session are:
For more information, visit this link:
Spring Framework
• Core Container
• Data Access/Integration
• Web Layer
• Spring Setup
• Key features
• Spring Bean
• Dependency Injection
• Relation between DI and IoC
• Spring IoC Containers
• Spring DI
https://www.mindsmapped.com/courses/software-development/spring-fundamentals-learn-spring-framework-and-spring-boot/
In this Java JSP Training session, you will learn JSP. Topics covered in this session are:
• JSP vs Servlet
• LifeCycle of Servlet
• JSP Elements
• JSP Page directive
• Directives vs Action tags
For more information, visit this link:
https://www.mindsmapped.com/courses/software-development/jsp-and-servlets-designing-web-applications-with-java/
In this Java JSP Training session, you will learn JSP. Topics covered in this session are:
• JSP (Java Server Pages Technology)
• JSP vs Servlet
• MVC Architecture
• Scriplet
For more information, visit this link:
https://www.mindsmapped.com/courses/software-development/jsp-and-servlets-designing-web-applications-with-java/
In this Java Hibernate Training session, you will learn Introducing Struts Framework. Topics covered in this session are:
• Introduction to Struts Framework
• Features
• Evolution
• Struts Demo
• Declarative validation
• Architecture
• Validators
• Interceptors
For more information, visit this link:
https://www.mindsmapped.com/courses/software-development/learn-hibernate-fundamentals-from-scratch/
In this Java Hibernate Training session, you will learn Integrating Struts with Hibernate. Topics covered in this session are:
• Struts 2
• Struts Action Class
• Validation
• Control Tags
• Data Tags
For more information, visit this link:
https://www.mindsmapped.com/courses/software-development/learn-hibernate-fundamentals-from-scratch/
In this Java Hibernate Training session, you will learn Hibernate part -2. Topics covered in this session are:
• Generator Class in Hibernate
• SQL Dialects
• Collection Mapping
• One-to-one Mapping
• Cascade Types
• Many to one / One to many
• Hibernate Lazy Loading
• Transaction Management
• HQL – Hibernate Query Language
• HCQL – Hibernate Criteria Query Language
• Hibernate Caching
For more information, visit this link:
https://www.mindsmapped.com/courses/software-development/learn-hibernate-fundamentals-from-scratch/
In this Java Hibernate Training session, you will learn Hibernate. Topics covered in this session are:
• Hibernate
• Advantage of hibernate
• Hibernate Architecture
• Hibernate project
• Hibernate with Annotations
• DAO Design Pattern in Java
For more information, visit this link:
https://www.mindsmapped.com/courses/software-development/learn-hibernate-fundamentals-from-scratch/
In this core java training session, you will learn JDBC Cont. Topics covered in this session are:
• JDBC Continued
• Introduction to Java Enterprise Edition (Java EE)
For more information about this course visit on this link: https://www.mindsmapped.com/courses/software-development/learn-java-fundamentals-hands-on-training-on-core-java-concepts/
In this core java training session, you will learn Examples of File IO &
Introduction to JDBC. Topics covered in this session are:
• File IO Continued
• Intro to JDBC (Java Database Connectivity)
For more information about this course visit on this link: https://www.mindsmapped.com/courses/software-development/learn-java-fundamentals-hands-on-training-on-core-java-concepts/
In this core java training session, you will learn Java IO – Files, Streams and
Object Serialization. Topics covered in this session are:
• Java IO
• Files
• Streams
• Byte-based
• Character-based
• Object Serialization
For more information about this course visit on this link: https://www.mindsmapped.com/courses/software-development/learn-java-fundamentals-hands-on-training-on-core-java-concepts/
In this core java training session, you will learn Inner Classes. Topics covered in this session are:
• Inner Classes
• Method-local Inner Class
• Anonymous Inner Class
• Static Nested Inner Class
For more information about this course visit on this link: https://www.mindsmapped.com/courses/software-development/learn-java-fundamentals-hands-on-training-on-core-java-concepts/
In this core java training session, you will learn Collections - Maps. Topics covered in this session are:
• Collections – Maps
• Map Interface
• Map methods
• Mapuse
• Hashmap
• Treemap
• Utilities
For more information about this course visit on this link: https://www.mindsmapped.com/courses/software-development/learn-java-fundamentals-hands-on-training-on-core-java-concepts/
In this core java training session, you will learn Java Review. Topics covered in this session are:
• How to prepare for a typical Java interview?
• Typical interview questions…
For more information about this course visit on this link: https://www.mindsmapped.com/courses/software-development/learn-java-fundamentals-hands-on-training-on-core-java-concepts/
Review Session and Attending Java Interviews Hitesh-Java
In this core java training session, you will learn Java Review. Topics covered in this session are:
• How to prepare for a typical Java interview?
• Typical interview questions…
For more information about this course visit on this link: https://www.mindsmapped.com/courses/software-development/learn-java-fundamentals-hands-on-training-on-core-java-concepts/
In this core java training session, you will learn Collections – Lists, Sets. Topics covered in this session are:
• List – ArrayList, LinkedList
• Set – HashSet, LinkedHashSet, TreeSet
For more information about this course visit on this link: https://www.mindsmapped.com/courses/software-development/learn-java-fundamentals-hands-on-training-on-core-java-concepts/
In this core java training session, you will learn Collections – Sorting, Comparing. Topics covered in this session are:
• Recap of Arrays, ArrayLists
• Basically, there can be 2 operations that you would want to perform on Arrays/ArrayLists.. (and maybe, other collections)
• Search: Override equals() and hashCode().
• Sort: provide comparison logic – Two ways
• Comparable interface
• Comparator interface
For more information about this course visit on this link: https://www.mindsmapped.com/courses/software-development/learn-java-fundamentals-hands-on-training-on-core-java-concepts/
In this core java training session, you will learn Collections. Topics covered in this session are:
• Recap of Arrays
• Introduction to Collections API
• Lists – ArrayList, Vector, LinkedList
For more information about this course visit on this link: https://www.mindsmapped.com/courses/software-development/learn-java-fundamentals-hands-on-training-on-core-java-concepts/
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...UiPathCommunity
💥 Speed, accuracy, and scaling – discover the superpowers of GenAI in action with UiPath Document Understanding and Communications Mining™:
See how to accelerate model training and optimize model performance with active learning
Learn about the latest enhancements to out-of-the-box document processing – with little to no training required
Get an exclusive demo of the new family of UiPath LLMs – GenAI models specialized for processing different types of documents and messages
This is a hands-on session specifically designed for automation developers and AI enthusiasts seeking to enhance their knowledge in leveraging the latest intelligent document processing capabilities offered by UiPath.
Speakers:
👨🏫 Andras Palfi, Senior Product Manager, UiPath
👩🏫 Lenka Dulovicova, Product Program Manager, UiPath
PHP Frameworks: I want to break free (IPC Berlin 2024)Ralf Eggert
In this presentation, we examine the challenges and limitations of relying too heavily on PHP frameworks in web development. We discuss the history of PHP and its frameworks to understand how this dependence has evolved. The focus will be on providing concrete tips and strategies to reduce reliance on these frameworks, based on real-world examples and practical considerations. The goal is to equip developers with the skills and knowledge to create more flexible and future-proof web applications. We'll explore the importance of maintaining autonomy in a rapidly changing tech landscape and how to make informed decisions in PHP development.
This talk is aimed at encouraging a more independent approach to using PHP frameworks, moving towards a more flexible and future-proof approach to PHP development.
Key Trends Shaping the Future of Infrastructure.pdfCheryl Hung
Keynote at DIGIT West Expo, Glasgow on 29 May 2024.
Cheryl Hung, ochery.com
Sr Director, Infrastructure Ecosystem, Arm.
The key trends across hardware, cloud and open-source; exploring how these areas are likely to mature and develop over the short and long-term, and then considering how organisations can position themselves to adapt and thrive.
GraphRAG is All You need? LLM & Knowledge GraphGuy Korland
Guy Korland, CEO and Co-founder of FalkorDB, will review two articles on the integration of language models with knowledge graphs.
1. Unifying Large Language Models and Knowledge Graphs: A Roadmap.
https://arxiv.org/abs/2306.08302
2. Microsoft Research's GraphRAG paper and a review paper on various uses of knowledge graphs:
https://www.microsoft.com/en-us/research/blog/graphrag-unlocking-llm-discovery-on-narrative-private-data/
Essentials of Automations: Optimizing FME Workflows with ParametersSafe Software
Are you looking to streamline your workflows and boost your projects’ efficiency? Do you find yourself searching for ways to add flexibility and control over your FME workflows? If so, you’re in the right place.
Join us for an insightful dive into the world of FME parameters, a critical element in optimizing workflow efficiency. This webinar marks the beginning of our three-part “Essentials of Automation” series. This first webinar is designed to equip you with the knowledge and skills to utilize parameters effectively: enhancing the flexibility, maintainability, and user control of your FME projects.
Here’s what you’ll gain:
- Essentials of FME Parameters: Understand the pivotal role of parameters, including Reader/Writer, Transformer, User, and FME Flow categories. Discover how they are the key to unlocking automation and optimization within your workflows.
- Practical Applications in FME Form: Delve into key user parameter types including choice, connections, and file URLs. Allow users to control how a workflow runs, making your workflows more reusable. Learn to import values and deliver the best user experience for your workflows while enhancing accuracy.
- Optimization Strategies in FME Flow: Explore the creation and strategic deployment of parameters in FME Flow, including the use of deployment and geometry parameters, to maximize workflow efficiency.
- Pro Tips for Success: Gain insights on parameterizing connections and leveraging new features like Conditional Visibility for clarity and simplicity.
We’ll wrap up with a glimpse into future webinars, followed by a Q&A session to address your specific questions surrounding this topic.
Don’t miss this opportunity to elevate your FME expertise and drive your projects to new heights of efficiency.
Search and Society: Reimagining Information Access for Radical FuturesBhaskar Mitra
The field of Information retrieval (IR) is currently undergoing a transformative shift, at least partly due to the emerging applications of generative AI to information access. In this talk, we will deliberate on the sociotechnical implications of generative AI for information access. We will argue that there is both a critical necessity and an exciting opportunity for the IR community to re-center our research agendas on societal needs while dismantling the artificial separation between the work on fairness, accountability, transparency, and ethics in IR and the rest of IR research. Instead of adopting a reactionary strategy of trying to mitigate potential social harms from emerging technologies, the community should aim to proactively set the research agenda for the kinds of systems we should build inspired by diverse explicitly stated sociotechnical imaginaries. The sociotechnical imaginaries that underpin the design and development of information access technologies needs to be explicitly articulated, and we need to develop theories of change in context of these diverse perspectives. Our guiding future imaginaries must be informed by other academic fields, such as democratic theory and critical theory, and should be co-developed with social science scholars, legal scholars, civil rights and social justice activists, and artists, among others.
State of ICS and IoT Cyber Threat Landscape Report 2024 previewPrayukth K V
The IoT and OT threat landscape report has been prepared by the Threat Research Team at Sectrio using data from Sectrio, cyber threat intelligence farming facilities spread across over 85 cities around the world. In addition, Sectrio also runs AI-based advanced threat and payload engagement facilities that serve as sinks to attract and engage sophisticated threat actors, and newer malware including new variants and latent threats that are at an earlier stage of development.
The latest edition of the OT/ICS and IoT security Threat Landscape Report 2024 also covers:
State of global ICS asset and network exposure
Sectoral targets and attacks as well as the cost of ransom
Global APT activity, AI usage, actor and tactic profiles, and implications
Rise in volumes of AI-powered cyberattacks
Major cyber events in 2024
Malware and malicious payload trends
Cyberattack types and targets
Vulnerability exploit attempts on CVEs
Attacks on counties – USA
Expansion of bot farms – how, where, and why
In-depth analysis of the cyber threat landscape across North America, South America, Europe, APAC, and the Middle East
Why are attacks on smart factories rising?
Cyber risk predictions
Axis of attacks – Europe
Systemic attacks in the Middle East
Download the full report from here:
https://sectrio.com/resources/ot-threat-landscape-reports/sectrio-releases-ot-ics-and-iot-security-threat-landscape-report-2024/
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Tobias Schneck
As AI technology is pushing into IT I was wondering myself, as an “infrastructure container kubernetes guy”, how get this fancy AI technology get managed from an infrastructure operational view? Is it possible to apply our lovely cloud native principals as well? What benefit’s both technologies could bring to each other?
Let me take this questions and provide you a short journey through existing deployment models and use cases for AI software. On practical examples, we discuss what cloud/on-premise strategy we may need for applying it to our own infrastructure to get it to work from an enterprise perspective. I want to give an overview about infrastructure requirements and technologies, what could be beneficial or limiting your AI use cases in an enterprise environment. An interactive Demo will give you some insides, what approaches I got already working for real.
UiPath Test Automation using UiPath Test Suite series, part 4DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 4. In this session, we will cover Test Manager overview along with SAP heatmap.
The UiPath Test Manager overview with SAP heatmap webinar offers a concise yet comprehensive exploration of the role of a Test Manager within SAP environments, coupled with the utilization of heatmaps for effective testing strategies.
Participants will gain insights into the responsibilities, challenges, and best practices associated with test management in SAP projects. Additionally, the webinar delves into the significance of heatmaps as a visual aid for identifying testing priorities, areas of risk, and resource allocation within SAP landscapes. Through this session, attendees can expect to enhance their understanding of test management principles while learning practical approaches to optimize testing processes in SAP environments using heatmap visualization techniques
What will you get from this session?
1. Insights into SAP testing best practices
2. Heatmap utilization for testing
3. Optimization of testing processes
4. Demo
Topics covered:
Execution from the test manager
Orchestrator execution result
Defect reporting
SAP heatmap example with demo
Speaker:
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...DanBrown980551
Do you want to learn how to model and simulate an electrical network from scratch in under an hour?
Then welcome to this PowSyBl workshop, hosted by Rte, the French Transmission System Operator (TSO)!
During the webinar, you will discover the PowSyBl ecosystem as well as handle and study an electrical network through an interactive Python notebook.
PowSyBl is an open source project hosted by LF Energy, which offers a comprehensive set of features for electrical grid modelling and simulation. Among other advanced features, PowSyBl provides:
- A fully editable and extendable library for grid component modelling;
- Visualization tools to display your network;
- Grid simulation tools, such as power flows, security analyses (with or without remedial actions) and sensitivity analyses;
The framework is mostly written in Java, with a Python binding so that Python developers can access PowSyBl functionalities as well.
What you will learn during the webinar:
- For beginners: discover PowSyBl's functionalities through a quick general presentation and the notebook, without needing any expert coding skills;
- For advanced developers: master the skills to efficiently apply PowSyBl functionalities to your real-world scenarios.
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualityInflectra
In this insightful webinar, Inflectra explores how artificial intelligence (AI) is transforming software development and testing. Discover how AI-powered tools are revolutionizing every stage of the software development lifecycle (SDLC), from design and prototyping to testing, deployment, and monitoring.
Learn about:
• The Future of Testing: How AI is shifting testing towards verification, analysis, and higher-level skills, while reducing repetitive tasks.
• Test Automation: How AI-powered test case generation, optimization, and self-healing tests are making testing more efficient and effective.
• Visual Testing: Explore the emerging capabilities of AI in visual testing and how it's set to revolutionize UI verification.
• Inflectra's AI Solutions: See demonstrations of Inflectra's cutting-edge AI tools like the ChatGPT plugin and Azure Open AI platform, designed to streamline your testing process.
Whether you're a developer, tester, or QA professional, this webinar will give you valuable insights into how AI is shaping the future of software delivery.
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Ramesh Iyer
In today's fast-changing business world, Companies that adapt and embrace new ideas often need help to keep up with the competition. However, fostering a culture of innovation takes much work. It takes vision, leadership and willingness to take risks in the right proportion. Sachin Dev Duggal, co-founder of Builder.ai, has perfected the art of this balance, creating a company culture where creativity and growth are nurtured at each stage.
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Jeffrey Haguewood
Sidekick Solutions uses Bonterra Impact Management (fka Social Solutions Apricot) and automation solutions to integrate data for business workflows.
We believe integration and automation are essential to user experience and the promise of efficient work through technology. Automation is the critical ingredient to realizing that full vision. We develop integration products and services for Bonterra Case Management software to support the deployment of automations for a variety of use cases.
This video focuses on the notifications, alerts, and approval requests using Slack for Bonterra Impact Management. The solutions covered in this webinar can also be deployed for Microsoft Teams.
Interested in deploying notification automations for Bonterra Impact Management? Contact us at sales@sidekicksolutionsllc.com to discuss next steps.
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
2. Page 1Classification: Restricted
Agenda
• Quick review of some important concepts from last class
• History of Java
• JDK and JRE
• Byte Code and JVM (Java Virtual Machine)
• Platform Independence
• Principles of Object Oriented Programming
• Writing your first Java Application
• Elements of Java programming language
• Built in Data Types
• Conditional Statements
• Loops
3. Page 2Classification: Restricted
History of Java - Milestones
• 1990 Sun Microsystems decided to develop special software that could be used to
manipulate consumer electronic devices. A team of Sun Microsystems programmers headed
by James Gosling was formed to undertake this task.
• 1991 After exploring the possibility of most Object Oriented Programming Language C++,
the team announced a new language named “Oak”.
• 1992 The team, known as a Green Project team by Sun, demonstrated the application of
their new language to control a list of home appliances using a hand-held device with a tiny
touch sensitive screen.
• 1993 The World Wide Web(WWW) appeared on the internet and transformed the text-
based Internet into a Graphical-rich environment. The green Project team came up with the
idea of developing Web Applets(tiny programs) using the new language that could run
on all types of computers connected to Internet.
• 1994 The team developed a web browser called “Hot Java” to locate and run applet
programs on Internet. Hot Java demonstrated the power of the new language, thus making it
instantly popular among the Internet users.
• 1995 Oak was named “Java”, due to some legal snags. Java is just a name and is not an
acronym. Many popular companies including Netscape and Microsoft announce to their
support to Java.
• 1996 Java established itself not only a leader for Internet Programming but also as a
general-purpose, object oriented programming language. Java found its home.
4. Page 3Classification: Restricted
Java - Features
The most striking feature of the language is that it is a platform-neutral
language. Java is a first programming language that is not tied to any
particular hardware or operating system.
Features of Java :
• Compiled and Interpreted.
• Platform-Independent and Portable
• Object-Oriented
• Robust and Secure
• Distributed
• Familiar, Simple and Small
• Multithreaded and Interactive
• High Performance
• Dynamic and Extensible
5. Page 4Classification: Restricted
JDK & JRE
Java Environment includes a large number of development tools and hundreds of classes
and methods. The development tools are part of the system known as Java
Development Kit(JDK) and the classes and methods are part of the Java Standard Library
(JSL), also known as the Application Programming Interface (API)
JDK : Java Development Kit comes with a collection of tools that are used for developing
and running Java Programs. They include :
• appletviewer-> Enables us to run Java Applets (Without using java compatible
browser)
• java Java Interpreter, which runs applets and applications by reading and
interpreting bytecode files.
• Javac The Java compiler, which translates Java source code to byte code files that
the interpreter understand.
• Javadoc Creates HTML-format documentation from Java source code files.
• Javah Produces header files for use with native methods.
• javap Java disassembler, which enables us to convert bytecode files into a
program description.
• Jdb Java debugger, which helps us to find errors in our programs.
6. Page 5Classification: Restricted
Byte Code & JVM(Java Virtual Machine)
Since platform-independence is a defining characteristic of Java, it is important to
understand how it is achieved. Programs exist in two forms; source code and object
code. Source Code is the textual version of the program that you write using a text
editor. The programs printed in a book are shown as source code. The executable form
of a program is object code. The computer can execute object code. Typically, object
code is specific to a particular CPU. Therefore, it cannot be executed on a different
platform. Java removes this feature in a very elegant manner.
Like all computer languages, a java program begins with its source code. The
difference is what happens when a Java program is compiled. Instead of producing
executable code, the Java Compiler produces an object file that contains bytecode.
Bytecodes are instructions that are not for any specific CPU. Instead, they are designed
to be interpreted by a Java Virtual Machine (JVM). The key to Java’s platform-
independence comes from the fact that the same bytecodes can be executed by any
JVM on any platform. As long as there is a JVM implemented for a given environment,
it can run any Java program. For example, Java programs can execute under Windows
98,Solaris,IRIX, or any other platform for which a JVM can be implemented for that
platform. This would then allow any Java program to execute in that new
environment.
7. Page 6Classification: Restricted
Platform Independent
Compilation is the process of converting the code that you type into a language
that the computer understands-machine language. When you compile a
program, the compiler checks for syntactical errors in code and lists all the
errors on the screen. You have to rectify the errors and recompile the program
to get the machine language code. The Java compiler compiles the code to
bytecode that is understood by the Java environment.
The bytecode is the result of compiling a Java program. You can execute this
code on any platform. In other words, due to the bytecode compilation process
and interpretation by a browser, Java programs can be executed on a variety of
hardware and operating systems. The only requirement is that the system
should have a java-enabled Internet browser. The java compiler is written in
Java, and the interpreter is written in C. The Java Interpreter can execute Java
Code directly on any machine on which a Java interpreter has been installed.
8. Page 7Classification: Restricted
Java CompilerJava Program
Java Interpreter Machine Code
Virtual Machine
Bytecode
Source Code
(.java)
Bytecode (.class)
Virtual Machine Real Machine
Stage 1: Process of
Compilation
Stage 2: Process of Converting bytecode into
machine code
Java Compiler and Interpreter
10. Page 9Classification: Restricted
OOP vs Procedural programming
• Procedural programming focuses on creating functions, whereas OOP
focuses on both data and functions.
• Procedural programming separates data of the program from the operation
that it performs, whereas in OOP data and function are tied together in a
single unit known as class.
12. Page 11Classification: Restricted
Principles of Object Oriented Programming
Object Oriented Programming (OOP) attempts to emulate the real world in software
systems.
The real world consists of objects, categorized in classes. In Object Oriented
Programming, classes have attributes, represented by data member. The attributes
distinguish an object of the class. Classes have behaviors, which are represented by
methods. The methods define how an object acts or reacts.
Features of Object Oriented Programming :
Encapsulation(Hiding) [Security] - Objects provide the benefit of information hiding.
Electrical wiring in a television should not be tempered with, and therefore should be
hidden from the user. Object Oriented programming allows you to encapsulate data
that you do not want users of the object to access. Typically, attributes of a class are
encapsulated.
Abstraction - Abstraction allows us to focus on only those parts of an object that
concern us. Person operating the television does not need to know the intricacies of
how it works. The person just needs to know how to switch it on, change channels,
and adjust the volume. All the details that are unnecessary to users are encapsulated,
leaving only a simple interface to interact with. Providing users with only what they
need to know is known as abstraction. i.e. Abstraction lets us ignore the irrelevant
details and concentrate on the essentials.
13. Page 12Classification: Restricted
Inheritance [Reusability]:- Inheritance is the process by which objects of one class acquire the
properties of objects of another class. Inheritance supports the concept of hierarchical classification. In
OOP, the concept of inheritance provides the idea of reusability. This means that we can add additional
features to an existing class without modifying it. This is possible by deriving a new class from the
existing one. The new class will have the combined features of both the classes.
Polymorphism [Flexibility]:- Polymorphism means “One Interface, multiple implementations.”
Shape
Ellipse Rectangle Triangle
The class Shape defines a method called getArea() that returns the area of a shape. However, this
method is not implemented by that class. Therefore, it is an abstract method and Shape is an abstract
class.
This means that no objects of class Shape can be created. However, the functionality of that class can
be inherited by its subclass. The various subclasses of Shape like Ellipse, Rectangle, Triangle do
implement the getArea() method.
Principles of Object Oriented Programming
15. Page 14Classification: Restricted
First Java Application
Create the File
The first step to create the HelloWorld application is to copy the text below into a
file called HelloWorld.java using your favorite text editor.
It is very important to call the file HelloWorld.java, because the compiler expects
the file name to match the class identifier
16. Page 15Classification: Restricted
Class Declaration
The first line public class HelloWorld declares a class, which is an Object-Oriented construct. As stated
earlier Java is true Object-Oriented language and therefore, everything must be placed inside a class.
Class is a keyword and declares that a new class definition follows.
Opening Brace
Every class definition in Java begins with an opening brace “{“ and ends with a matching closing brace
“}”, appearing in the last line in the example.
The main() method
Every java application program must include the main() method. This is starting point for the
interpreter to begin the execution of the program. A Java application can have any number of classes
but only one of them must include a main method to initiate the execution.
Public : The Keyword public is an access specifier that declares the main method as unprotected and
therefore making it to accessible to all other classes.
Static : The keyword static which declares this method as one that belongs to the entire Class and not a
part of any Objects of the class.
First Java Application
17. Page 16Classification: Restricted
The main must always be declared be declared as static since the interpreter uses
this method before any objects are created.
Void : The type modifier void states that the main method does not return any value.
All parameters to a method are declared inside a pair of parentheses. Here,
String args[] declares a parameter named args, which contains an array of objects
Of the class type String.
The Output Line
The only executable Statement in the program is
System.out.println("Hello World!!");
Since Java is a true Object Oriented Language, every method must be part of an
Object. The println method is a member of the out Object, which is static data
Member of the System class. This line prints
Hello World!!
to the screen. The method println always appends a newline character to the end
of the string.
First Java Application
18. Page 17Classification: Restricted
Compile the Code
To compile the program, you need to first install the JDK. Then, use the program
javac included with the JDK to convert the text to code which the
computer can run. To run javac, on a Macintosh drag the source file over the javac
icon. On any other computer, type the line:
at a command prompt. javac HelloWorld.java
The javac program creates a file called HelloWorld.class from the HelloWorld.java file. Inside this file
(HelloWorld.class) is text known as bytecodes which can be run by the Java interpreter.
Run the Program
Now that you have compiled the program, you can run it by typing at the command prompt:
java HelloWorld
After you do this, the computer should print to the screen
Hello World!!
That may not seem very interesting, but then it's a simple program. If you don't see the Hello World!!
on the screen, go back and make sure you have typed in the file exactly as shown, and make sure that
you called the file HelloWorld.java.
First Java Application
22. Page 21Classification: Restricted
3 Types of Errors in Programming
Most errors are easily fixed by carefully examining the program as we create it, in just
the same way as we fix spelling and grammatical errors when we type an e-mail
message.
• Compile-time errors. These errors are caught by the system when we compile the
program, because they prevent the compiler from doing the translation (so it issues
an error message that tries to explain why).
• Run-time errors. These errors are caught by the system when we execute the
program, because the program tries to perform an invalid operation (e.g., division
by zero).
• Logical errors. These errors are (hopefully) caught by the programmer when we
execute the program and it produces the wrong answer. Bugs are the bane of a
programmer's existence. They can be subtle and very hard to find.
23. Page 22Classification: Restricted
Providing Input to the HelloWorld program
Typically, we want to provide input to our programs: data that they can
process to produce a result. The simplest way to provide input data is
illustrated.
Whenever this program is executed, it reads the command-line argument
that you type after the program name and prints it back out to the terminal
as part of the message.
25. Page 24Classification: Restricted
Exercise
Modify UseArgument.java to make a program UseThree.java that takes three
names and prints out a proper sentence with the names in the reverse of the
order given,
so that for example, "java UseThree Alice Bob Carol" gives "Hi Carol, Bob, and
Alice.".
29. Page 28Classification: Restricted
JAVA CONTROLS
• Variables and Constants
• Arithmetic Operator and Expressions
• Type Conversion in Java
• Java’s Control Statements
• If
• If-else
• Do-while
• While
• for
• Increment and Decrement Operators
• Escape Sequences Characters
• Relational and Logical Operators
• Ternary Operators
• Switch case
• Break
• Bitwise Operators
• Arrays-Single and Multidimensional
30. Page 29Classification: Restricted
Variables and Constants in Java
Constants: Constant “literals” in Java refer to fixed values that do not change during the
execution of a program.
Java supports several types of constants given in figure below :
Integer Constants: Refers to a sequence of digits. There are three types of Integers, namely,
decimal, octal and hexadecimal integer.
Decimal Integer consist of a set of digits, 0 through 9, preceded by an optional minus sign.
An octal integer constant consists of any combination of digits from the set 0 through 7,
with a leading 0.
A sequence of digits preceded by ox or OX is considered as hexadecimal integer. They may
also include alphabets A through F.
Integer
31. Page 30Classification: Restricted
Real Constants: Integer constant are inadequate to represent quantities that vary continuously, such
as distance, heights, temperature, prices and so on. These quantities are represented by numbers
containing fractional parts like 17.546. Such numbers are called real.
The real number may also be expressed in exponential (or scientific ) notation. For example, the
value 215.65 may be written as 2.1565e2 in exponential notation. e2 means multiply by 102. The
general form is :
mantissa e exponent
mantissa is either a real number expressed in decimal notation or an integer. The exponent is an
integer with an optional plus or minus sign. The letter e separating the mantissa and the exponent
can be written in either lowercase or uppercase. Since the exponent causes the decimal point to
“float”, this notation is said to represent a real number in floating point form.
Variables and Constants
32. Page 31Classification: Restricted
Single Character Constants: A single character constant (or simply character constant ) contains a single character
enclosed within a pair of single quote marks. Examples of character constants are : ‘5’ ‘X’ ‘;’
String Constant: A string constant is a sequence of characters enclosed between double quotes. The characters may
be alphabets, digits, special characters and blank spaces. Example are : “Hello Java” “1997”
* Constants in Java are not directly supported. Then how do you declare constants?
Variable: A variable is an Identifier that denotes a storage location used to store a data value. Unlike constants that
remain unchanged during the execution of program. Examples of variables : average,height,total_height.
Variable name may consist of alphabets, digits, the underscore(_) and dollar characters.
Rules to write Variable/Identifier in Java :
• They must not begin with digit
• Upper and lowercase are distinct. This means that the variable Total is not the same as total or TOTAL.
• It should not be a keyword.
• White space is not allowed.
• Variable names can be of any length.
Variables and Constants in Java
47. Page 46Classification: Restricted
Type Conversion
We often find ourselves converting data from one type to another using one of the following
approaches.
• Explicit type conversion. Call methods such as Math.round(), Integer.parseInt(), and
Double.parseDouble().
• Automatic type conversion. For primitive numeric types, the system automatically performs
type conversion when we use a value whose type has a larger range of values than expected.
• Explicit casts. Java also has some built-in type conversion methods for primitive types that you
can use when you are aware that you might lose information, but you have to make your
intention using something called a cast.
• Automatic conversions for strings. The built-in type String obeys special rules. One of these
special rules is that you can easily convert any type of data to a String by using the + operator.
61. Page 60Classification: Restricted
What is the output?
Consider the following code snippet.
int i = 10;
int n = i++%5;
• What are the values of i and n after the code is executed?
• What are the final values of i and n if instead of using the postfix increment
operator (i++), you use the prefix version (++i))?
64. Page 63Classification: Restricted
Importance of Blocks in Code
A block is a group of zero or more statements between balanced braces and can be
used anywhere a single statement is allowed. The following example, BlockDemo,
illustrates the use of blocks: