The notes covers the topic THE CLR AND THE .NET FRAMEWORK in C#.net
You will learn about creating assemblies and strong names for them
in CLR via C#. More specifically, you will learn about:
Defining Assemblies
Differentiate the Assembly Types
Creating Strong names
Creating an assembly cache
Working with Directories
Installing Assemblies
Signing into an Assembly
Configuring the assembly
Tamper resistant assemblies
Resolving an assembly reference
Explaining the process of locating and binding assembles
java training in jaipur|java training|core java training|java training compa...infojaipurinfo Jaipur
http://www.mcainternship.online/core-java/
java training in jaipur|java training|core java training|java training company in jaipur|java training company|java training institute
#javatraininginjaipur
#javatraining
#corejavatraining|
#javatrainingcompanyinjaipur
#javatrainingcompany
#javatraininginstitute
Slides from my JAX London 2016 talk, discussing how the new features affect library design. Follows on from the Java SE 8 Best Practices talk - http://www.slideshare.net/scolebourne/java-se-8-best-practices-53975908
Core Java introduction | Basics | free course Kernel Training
http://kerneltraining.com/core-java/
Learn the basics of Java and gain practical experience that is required to begin your career in java programming. Kernel Training has designed classroom and online course to upgrade your knowledge and skills in core Java.
Course Curriculum:
Introduction to Java
JDK and practical applications
Java Basic Data Types and Operators
Programming Constructs, Classes and Methods, constructor and Finalizer
Polymorphism
Inheritance
Method overriding and abstract classes
Packages and Interfaces
Strings and Arrays
Enums
Core Java Tutorial. In case you want to get trained in Spring Framework you can refer here:
<a href="https://www.emexotechnologies.com/courses/java-development-training/core-java-training/">Java Training</a>
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.
Chapter 11:Understanding Client-Side TechnologiesIt Academy
Exam Objective 7.1 Describe at a high level the basic characteristics, benefits, and drawbacks of creating thin-clients using HTML and JavaScript and the related deployment issues and solutions.
The notes covers the topic THE CLR AND THE .NET FRAMEWORK in C#.net
You will learn about creating assemblies and strong names for them
in CLR via C#. More specifically, you will learn about:
Defining Assemblies
Differentiate the Assembly Types
Creating Strong names
Creating an assembly cache
Working with Directories
Installing Assemblies
Signing into an Assembly
Configuring the assembly
Tamper resistant assemblies
Resolving an assembly reference
Explaining the process of locating and binding assembles
java training in jaipur|java training|core java training|java training compa...infojaipurinfo Jaipur
http://www.mcainternship.online/core-java/
java training in jaipur|java training|core java training|java training company in jaipur|java training company|java training institute
#javatraininginjaipur
#javatraining
#corejavatraining|
#javatrainingcompanyinjaipur
#javatrainingcompany
#javatraininginstitute
Slides from my JAX London 2016 talk, discussing how the new features affect library design. Follows on from the Java SE 8 Best Practices talk - http://www.slideshare.net/scolebourne/java-se-8-best-practices-53975908
Core Java introduction | Basics | free course Kernel Training
http://kerneltraining.com/core-java/
Learn the basics of Java and gain practical experience that is required to begin your career in java programming. Kernel Training has designed classroom and online course to upgrade your knowledge and skills in core Java.
Course Curriculum:
Introduction to Java
JDK and practical applications
Java Basic Data Types and Operators
Programming Constructs, Classes and Methods, constructor and Finalizer
Polymorphism
Inheritance
Method overriding and abstract classes
Packages and Interfaces
Strings and Arrays
Enums
Core Java Tutorial. In case you want to get trained in Spring Framework you can refer here:
<a href="https://www.emexotechnologies.com/courses/java-development-training/core-java-training/">Java Training</a>
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.
Chapter 11:Understanding Client-Side TechnologiesIt Academy
Exam Objective 7.1 Describe at a high level the basic characteristics, benefits, and drawbacks of creating thin-clients using HTML and JavaScript and the related deployment issues and solutions.
chap4 ; Flow Control, Assertions, and Exception Handling (scjp/ocjp)It Academy
2.1 Develop code that implements an if or switch statement;
and identify legal argument types for these statements.
2.2 Develop code that implements all forms of loops and
iterators, including the use of for, the enhanced for loop
(for-each), do, while, labels, break, and continue; and explain
the values taken by loop counter variables during and after
loop execution.
2.3 Develop code that makes use of assertions, and distinguish
appropriate from inappropriate uses of assertions.
2.4 Develop code that makes use of exceptions and exception
handling clauses (try, catch, finally), and declares methods and
overriding methods that throw exceptions.
2.5 Recognize the effect of an exception arising at a specified
point in a code fragment. Note that the exception may be a
runtime exception, a checked exception, or an error.
2.6 Recognize situations that will result in any of the following
being thrown: ArrayIndexOutOfBoundsException, ClassCast-
Exception, IllegalArgumentException, IllegalState-Exception,
NullPointerException, NumberFormatException, Assertion-
Error, ExceptionInInitializerError, StackOverflow-Error or
NoClassDefFoundError.ÊUnderstand which of these are
thrown by the virtual machine and recognize situations in
which others should be thrown programatically.
JAVA CERTIFICATION EXAM OBJECTIVES
COVERED IN THIS CHAPTER:
4.1 Write code to define, instantiate, and start new threads
using both java.lang.Thread and java.lang.Runnable.
4.2 Recognize the states in which a thread can exist, and
identify ways in which a thread can transition from one state
to another.
4.3 Given a scenario, write code that makes appropriate use
of object locking to protect static or instance variables from
concurrent access problems.
4.4 Given a scenario, write code that makes appropriate use of wait, notify, or notifyAll.
Chapter 6:Working with Classes and Their RelationshipsIt Academy
Exam Objective 1.3 Describe, compare, and contrast class compositions, and associations (including multiplicity: one-to-one, one-to-many, and many-to-many), and association navigation.
chap 2 : Operators and Assignments (scjp/ocjp)It Academy
Write code that correctly applies the appropriate
operators including assignment operators (limited to: =,
+ =, -=), arithmetic operators (limited to: +, -, *, /, %, ++, --),
relational operators (limited to: <,>< =, >, > =, = =, !=), the
instanceof operator, logical operators (limited to: &, |, ^, !,
&&, ||), and the conditional operator ( ? : ), to produce a
desired result. Write code that determines the equality of
two objects or two primitives.
JAVA CERTIFICATION EXAM OBJECTIVES
COVERED IN THIS CHAPTER:
3.2 Given a scenario involving navigating file systems, reading
from files, or writing to files, develop the correct solution
using the following classes (sometimes in combination) from
java.io: BufferedReader,BufferedWriter, File, FileReader,
FileWriter and PrintWriter.
3.3 Develop code that serializes and/or de-serializes objects
using the following APIs from java.io: DataInputStream,
DataOutputStream, FileInputStream, FileOutputStream,
ObjectInputStream, ObjectOutputStream, and Serializable.
In addition, develop Serializable classes that correctly
declare and use transient variables and private readObject
and writeObject methods. Given a scenario and/or code
example, recognize when, if, and which constructors will be
called in an object's inheritance chain during deserialization.
Chapter 12:Understanding Server-Side TechnologiesIt Academy
Exam Objective 8.4 Describe at a high level the fundamental benefits and drawbacks of using J2EE server-side technologies, and describe and compare the basic characteristics of the web-tier, business-tier, and EIS tier.
chap 8 : The java.lang and java.util Packages (scjp/ocjp)It Academy
JAVA CERTIFICATION EXAM OBJECTIVES
COVERED IN THIS CHAPTER:
3.1 Develop code that uses the primitive wrapper classes
(such as Boolean, Character, Double, Integer, etc.) and/or
autoboxing and unboxing. Discuss the differences between
the String, StringBuilder, and StringBuffer classes.
3.4 Use standard J2SE APIs in the java.text package to
correctly format or parse dates, numbers, and currency
values for a specific locale, and, given a scenario, determine
the appropriate methods to use if you want to use the default
locale or a specific locale. Describe the purpose and use of the
java.util.Locale class.
3.5 Write code that uses standard J2SE APIs in the java.util
and java.util.regex packages to format or parse strings or
streams. For strings, write code that uses the Pattern and
Matcher classes and the String.split method. Recognize
and use regular expression patterns for matching (limited
to . (dot), * (star), + (plus), ?, \d, \s, \w, [], ()). The use of
*, +, and ? will be limited to greedy quantifiers, and the
parenthesis operator will be used only as a grouping
mechanism, not for capturing content during matching.
For streams, write code using the Formatter and Scanner
classes and the PrintWriter.format/printf methods. Recognize
and use formatting parameters (limited to %b, %c, %d, %f, %s)
in format strings.
6.1 Given a design scenario, determine which collection
classes and/or interfaces should be used to properly
implement that design, including the use of the
Comparable interface.
Chapter 9:Representing Object-Oriented Concepts with UMLIt Academy
The SCJA exam requires minimum knowledge of the UML Infrastructure and Superstructure specifications. Of the 14 UML diagram types, the class diagram is the only diagram type on the exam.
There is value in understanding UML diagrams and features that are outside the scope of this exam.
So in your independent research on UML, don’t ignore the other diagram types since this knowledge will surely come in handy later for you at work.
Chapter 5:Understanding Variable Scope and Class ConstructionIt Academy
Exam Objective 4.2 Given an algorithm as pseudo-code, determine the correct scope for a variable used in the algorithm and develop code to declare variables in any of the following scopes: instance variable, method parameter, and local variable.
chap4 : Converting and Casting (scjp/ocjp)It Academy
5.2 Given a scenario, develop code that demonstrates the
use of polymorphism. Further, determine when casting will
be necessary and recognize compiler vs. runtime errors
related to object reference casting.
7.6 Write code that correctly applies the appropriate
operators including assignment operators (limited to: =,
+ =, -=), arithmetic operators (limited to: +, -, *, /, %, ++, --),
relational operators (limited to: <,>< =, >, > =, = =, !=), the
instanceof operator, logical operators (limited to: &, |, ^, !,
&&, ||), and the conditional operator ( ? : ), to produce a
desired result. Write code that determines the equality of
two objects or two primitives.
Chapter 10:Understanding Java Related Platforms and Integration TechnologiesIt Academy
Exam Objective 6.1 Distinguish the basic characteristics of the three Java platforms: J2SE, J2ME, and J2EE, and given a high-level architectural goal, select the appropriate Java platform or platforms.
Chapter 3 : Programming with Java Operators and StringsIt Academy
Exam Objective 4.5 Given an algorithm as pseudo-code, develop code that correctly applies the appropriate operators, including assignment operators (limited to: =, +=, -=), arithmetic operators (limited to: +, -, *, /, %, ++, --), relational operators (limited to: <,><=,>, >=, ==, !=), logical operators (limited to: !, &&, ||), to produce a desired result. Also, write code that determines the equality of two objects or two primitives.
Chapter 3:Programming with Java Operators and StringsIt Academy
Exam Objective 4.5 Given an algorithm as pseudo-code, develop code that correctly applies the appropriate operators, including assignment operators (limited to: =, +=, -=), arithmetic operators (limited to: +, -, *, /, %, ++, --), relational operators (limited to: <,><=,>, >=, ==, !=), logical operators (limited to: !, &&, ||), to produce a desired result. Also, write code that determines the equality of two objects or two primitives.
The presentation slides used during WSO2Con 2011 tutorial session. The tutorial included hands on sessions as well. The slides named as 'demo' refers to hadns-on sessions/demos.
OOPs with Java - Packaging and Access ModifiersRatnaJava
In this session you will learn:
Packaging Classes & Access Modifiers
For more information: https://www.mindsmapped.com/courses/software-development/become-a-java-developer-hands-on-training/
OCA JAVA - 1 Packages and Class StructureFernando Gil
OCA JAVA Training Material
Talking about Packages and Class Structure
- Understanding Packages
- Understanding Package-Derived Classes
- Understanding Class Structure
Slides based in the book: "OCA Java SE 7 Programmer I Study Guide (Examn 1Z0-803)"
Chapter 4:Object-Oriented Basic ConceptsIt Academy
Exam Objective 1.1 Describe, compare, and contrast primitives (integer, floating point,boolean, and character), enumeration types, and objects.
Exam Objective 3.1 Develop code that uses primitives, enumeration types, and object references, and recognize literals of these types.
Chapter 2 : Programming with Java StatementsIt Academy
Exam Objective 4.1 Describe, compare, and contrast these three fundamental types of statements: assignment, conditional, and iteration, and given a description of an algorithm, select the appropriate type of statement to design the algorithm
chap 6 : Objects and classes (scjp/ocjp)It Academy
.1 Develop code that declares classes (including abstract
and all forms of nested classes), interfaces, and enums,
and includes the appropriate use of package and import
statements (including static imports).
1.4 Develop code that declares both static and non-static
methods, and - if appropriate - use method names that
adhere to the JavaBeans naming standards. Also develop
code that declares and uses a variable-length argument list.
1.5 Given a code example, determine if a method is correctly
overriding or overloading another method, and identify
legal return values (including covariant returns), for the
method.
1.6 Given a set of classes and superclasses, develop
constructors for one or more of the classes. Given a
class declaration, determine if a default constructor will
be created, and if so, determine the behavior of that
constructor. Given a nested or non-nested class listing,
write code to instantiate the class.
5.1 Develop code that implements tight encapsulation,
loose coupling, and high cohesion in classes, and describe
the benefits.
5.2 Given a scenario, develop code that demonstrates the
use of polymorphism. Further, determine when casting will
be necessary and recognize compiler vs. runtime errors
related to object reference casting.
5.3 Explain the effect of modifiers on inheritance with
respect to constructors, instance or static variables, and
instance or static methods.
1.2 Develop code that declares an interface. Develop code
that implements or extends one or more interfaces. Develop
code that extends an abstract class.
1.4 Develop code that declares both static and non-static
methods, and - if appropriate - use method names that
adhere to the JavaBeans naming standards. Also develop
code that declares and uses a variable-length argument list.
5.3 Explain the effect of modifiers on inheritance with
respect to constructors, instance or static variables, and
instance or static methods.
7.1 Given a code example and a scenario, write code
that uses the appropriate access modifiers, package
declarations, and import statements to interact with
(through access or inheritance) the code in the example.
Chap1 language fondamentale of java ( scjp /ocjp)It Academy
Develop code that declares classes (including abstract
and all forms of nested classes), interfaces, and enums,
and includes the appropriate use of package and import
statements (including static imports).
1.3 Develop code that declares, initializes, and uses
primitives, arrays, enums, and objects as static, instance,
and local variables. Also, use legal identifiers for variable
names.
7.2 Given an example of a class and a command-line,
determine the expected runtime behavior.
7.3 Determine the effect upon object references and primitive
values when they are passed into methods that perform
assignments or other modifying operations on the
parameters.
7.4 Given a code example, recognize the point at which
an object becomes eligible for garbage collection, and
determine what is and is not guaranteed by the garbage
collection system. Recognize the behaviors of System.gc
and finalization.
GridMate - End to end testing is a critical piece to ensure quality and avoid...ThomasParaiso2
End to end testing is a critical piece to ensure quality and avoid regressions. In this session, we share our journey building an E2E testing pipeline for GridMate components (LWC and Aura) using Cypress, JSForce, FakerJS…
Securing your Kubernetes cluster_ a step-by-step guide to success !KatiaHIMEUR1
Today, after several years of existence, an extremely active community and an ultra-dynamic ecosystem, Kubernetes has established itself as the de facto standard in container orchestration. Thanks to a wide range of managed services, it has never been so easy to set up a ready-to-use Kubernetes cluster.
However, this ease of use means that the subject of security in Kubernetes is often left for later, or even neglected. This exposes companies to significant risks.
In this talk, I'll show you step-by-step how to secure your Kubernetes cluster for greater peace of mind and reliability.
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/
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024Neo4j
Neha Bajwa, Vice President of Product Marketing, Neo4j
Join us as we explore breakthrough innovations enabled by interconnected data and AI. Discover firsthand how organizations use relationships in data to uncover contextual insights and solve our most pressing challenges – from optimizing supply chains, detecting fraud, and improving customer experiences to accelerating drug discoveries.
Unlocking Productivity: Leveraging the Potential of Copilot in Microsoft 365, a presentation by Christoforos Vlachos, Senior Solutions Manager – Modern Workplace, Uni Systems
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.
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf91mobiles
91mobiles recently conducted a Smart TV Buyer Insights Survey in which we asked over 3,000 respondents about the TV they own, aspects they look at on a new TV, and their TV buying preferences.
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Albert Hoitingh
In this session I delve into the encryption technology used in Microsoft 365 and Microsoft Purview. Including the concepts of Customer Key and Double Key Encryption.
DevOps and Testing slides at DASA ConnectKari Kakkonen
My and Rik Marselis slides at 30.5.2024 DASA Connect conference. We discuss about what is testing, then what is agile testing and finally what is Testing in DevOps. Finally we had lovely workshop with the participants trying to find out different ways to think about quality and testing in different parts of the DevOps infinity loop.
A tale of scale & speed: How the US Navy is enabling software delivery from l...sonjaschweigert1
Rapid and secure feature delivery is a goal across every application team and every branch of the DoD. The Navy’s DevSecOps platform, Party Barge, has achieved:
- Reduction in onboarding time from 5 weeks to 1 day
- Improved developer experience and productivity through actionable findings and reduction of false positives
- Maintenance of superior security standards and inherent policy enforcement with Authorization to Operate (ATO)
Development teams can ship efficiently and ensure applications are cyber ready for Navy Authorizing Officials (AOs). In this webinar, Sigma Defense and Anchore will give attendees a look behind the scenes and demo secure pipeline automation and security artifacts that speed up application ATO and time to production.
We will cover:
- How to remove silos in DevSecOps
- How to build efficient development pipeline roles and component templates
- How to deliver security artifacts that matter for ATO’s (SBOMs, vulnerability reports, and policy evidence)
- How to streamline operations with automated policy checks on container images
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.
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/
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdfPeter Spielvogel
Building better applications for business users with SAP Fiori.
• What is SAP Fiori and why it matters to you
• How a better user experience drives measurable business benefits
• How to get started with SAP Fiori today
• How SAP Fiori elements accelerates application development
• How SAP Build Code includes SAP Fiori tools and other generative artificial intelligence capabilities
• How SAP Fiori paves the way for using AI in SAP apps
Climate Impact of Software Testing at Nordic Testing DaysKari Kakkonen
My slides at Nordic Testing Days 6.6.2024
Climate impact / sustainability of software testing discussed on the talk. ICT and testing must carry their part of global responsibility to help with the climat warming. We can minimize the carbon footprint but we can also have a carbon handprint, a positive impact on the climate. Quality characteristics can be added with sustainability, and then measured continuously. Test environments can be used less, and in smaller scale and on demand. Test techniques can be used in optimizing or minimizing number of tests. Test automation can be used to speed up testing.
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
3. Exam Objective 5.1 Describe the purpose of packages in the Java
language, and recognize the proper use of import and package
statements.
• Packaging is a common approach used to organize
related classes and interfaces.
• Most reusable code is packaged.
• Packages are thought of as containers for classes, but
actually they define where classes will be located in the
hierarchical directory structure.
• Packaging your classes also promotes code reuse,
maintainability, and the objectoriented principle of
encapsulation and modularity.
3
4. The package Statement
• Package statements are optional.
• Package statements are limited to one per source file.
• Standard coding convention for package statements reverses the
domain name of the organization or group creating the package.
For example, the owners of the domain name scjaexam.com may
use : com.scjaexam.utilities.
• Package names equate to directory structures. The package name
com.scjaexam.utils would equate to the directory
com/scjaexam/utils.
•
4
5. Source Files
• All Java source files must end with the.java extension.
• A source file may contain an unlimited number of non-public class
definitions.
• Three top-level elements known as compilation units may appear in a
file.
1.Package declaration
2.Import statements
3.Class, interface, and enum definitions
• Use only alphanumeric characters in package names.
• You must be careful that each component of your package name
hierarchy is a legitimate directory name on all platforms.
• Sometimes you might use classes with the same name in two
different packages, such as the Date classes in the packages java.util
And java.sql
Ben Abdallah Helmi Architect en
5
J2EE
6. 4. If all three top-level elements occur in a source file, they
must appear in which order?
A. Imports, package declarations, classes/interfaces/enums
B. Classes/interfaces/enums, imports, package declarations
C. Package declaration must come first; order for imports
and class/interfaces/enum definitionsis not significant
D. Package declaration, imports, class/interface/enum
definitions.
E. Imports must come first; order for package declarations
and class/interface/enum definitionsis not significant
Ben Abdallah Helmi Architect en
6
J2EE
7. 4. D. Package declaration must come first, followed by
imports, followed by class/interface/enum definitions.
Ben Abdallah Helmi Architect en
7
J2EE
9. package and import Statements
• To place a source file into a package, use the package statement
at the beginning of that file.
• You may use zero or one package statements per source file.
• To import classes from other packages into your source file, use
the import statement.
• The java.lang package that houses the core language classes is
imported by default.
9
10. • The package names beginning with java.* and javax.* are
reserved for use by JavaSoft, the business unit of Sun
Microsystems that is responsible for Java technologies.
• Package names should be lowercase. Individual words
within the package name should be separated by
underscores.
10
12. Importing
Java’s static import facility, which was introduced in rev 5.0, allows you to import static data and
methods, as well as classes. In other words, you may refer to static data and methods in external
classes without using full names.
For example, the java.awt.Color class contains static data members names RED, GREEN, BLUE, and
so on. Suppose you want to set myColor to GREEN. Without static imports, you have to do the
following:
import java.awt.Color;
…
myColor = Color.GREEN;
import static java.awt.Color.GREEN;
…
myColor = GREEN;
Note that the import keyword is followed by static. This tells the compiler to import the name of a static
element of a class, rather than a class name.
Ben Abdallah Helmi Architect en J2EE
12
13. Static importing gives you access to static methods as well
as static data. Suppose class measure.Scales has a
method called poundsToMicrograms() that looks like
this:
public static float poundsToMicrograms(float pounds) {
return pounds * KGS_PER_LB * 1.0e6f;
}
Any source file can import this method as follows:
import static measure.Scales.poundsToMicrograms();
A source file that performs this import may invoke the
method as (for example)
float ugs = poundsToMicrograms(lbs);
This is a bit more convenient than
float ugs = Scales.poundsToMicrograms(lbs);
Ben Abdallah Helmi Architect en
13
J2EE
14. As with ordinary imports, static imports have only a slight
compile-time cost and zero runtime cost. Many
programmers are unclear on this point, perhaps because
the word “import” feels like such an active verb; it seems
as if surely the class loader or some other mechanism
must be hard at work. Remember that importing does
nothing more than bring a name into the local
namespace. So importing and static importing are quite
inexpensive.
Ben Abdallah Helmi Architect en
14
J2EE
15. 11. Suppose a source file contains a large number of
import statements. How do the imports affect the time
required to compile the source file?
A. Compilation takes no additional time.
B. Compilation takes slightly more time.
C. Compilation takes significantly more time.
Ben Abdallah Helmi Architect en
15
J2EE
16. 12. Suppose a source file contains a large number of
import statements and one class definition.
How do the imports affect the time required to load the
class?
A. Class loading takes no additional time.
B. Class loading takes slightly more time.
C. Class loading takes significantly more time.
Ben Abdallah Helmi Architect en
16
J2EE
17. 12. A.. Importing is strictly a compile-time function. It
has no effect on class loading or on any other runtime function.
Ben Abdallah Helmi Architect en
17
J2EE
18. 13. Which of the following are legal import statements?
A. import java.util.Vector;
B. static import java.util.Vector.*;
C. import static java.util.Vector.*;
D. import java.util.Vector static;
Ben Abdallah Helmi Architect en
18
J2EE
19. 13. A, C. The import keyword may optionally be
followed by the static keyword.
Ben Abdallah Helmi Architect en
19
J2EE
20. 14. Which of the following may be statically imported?
(Choose all that apply.)
A. Package names
B. Static method names
C. Static field names
D. Method-local variable names
Ben Abdallah Helmi Architect en
20
J2EE
21. 14. B, C. You may statically import method and field
names.
Ben Abdallah Helmi Architect en
21
J2EE
22. Class Paths
When the Java compiler or the Virtual Machine needs a
classfile, it searches all the locations listed in its classpath.
The classpath is formed by merging the CLASSPATH
environment variable and any locations specified in -classpath
or -cp command line arguments. The members of a classpath
may be directories or jar files.
Let’s take an example. Suppose the compiler is looking for class
sgsware.sphinx.Domain. The package structure
sgsware.sphinx requires that the Domain.class file must be in
a directory called sphinx, which must be in a directory called
sgsware. So the compiler checks each classpath member to
see if it contains sgswaresphinxDomain.class.
On Windows platforms, directories and jar files in a classpath
are separated by a semicolon (“;”). On UNIX platforms the
separator is a colon (“:”).
Ben Abdallah Helmi Architect en
22
J2EE
23. 15. What happens when you try to compile and run the
following code?
public class Q15 {
static String s;
public static void main(String[] args) {
System.out.println(“>>” + s + “<<”);
}
}
A. The code does not compile
B. The code compiles, and prints out >><<
C. The code compiles, and prints out >>null<<
Ben Abdallah Helmi Architect en
23
J2EE
24. 15. C. The code compiles without error. At static
initialization time, s is initialized to null (and not to a
reference to an empty string, as suggested by C).
Ben Abdallah Helmi Architect en
24
J2EE
25. Understanding Package-Derived Classes
• Exam Objective 5.3 Describe the purpose and types of
classes for the following Java packages: java.awt,
javax.swing, java.io, java.net, java.util.
25
26. These include packages for Java
utilities, basic input/output, networking,
AWT and Swing.
•
•
•
•
•
Java Utilities API
Java Basic Input/Output API
Java Networking API
Java Abstract Window Toolkit API
Java Swing API
26
35. Java Swing API
• The Java Swing API is contained in the package
javax.swing. This API provides functionality for creating
lightweight (pure-Java) containers and components.
• The Swing API superseded the AWT API. Many of the
new classes were simply prefaced with the addition of “J”
in contrast to the legacy AWT component equivalent.
35
39. • Be familiar with the package prefixes java and javax.
The prefix java is commonly used for the core
packages.
• The prefix javax is commonly used for packages
comprised of Java standard extensions. Take special
notice of the prefix usage in the AWT and Swing APIs:
java.awt and javax.swing.
39
41. Compiling and Interpreting Java Code
• Exam Objective 5.2 Demonstrate the proper use of the “javac”
command (including the command-line options:
-d and –classpath ) and demonstrate the proper use of the
“java” command (including the command-line options:
-classpath, -D and –version ).
41
42. Compiling with javac
• javac [options] [source files]
• javac -help
• javac -classpath com:. -g Foo.java
Bar.java
• Whenever you specify multiple options
and/or files they should be separated by
spaces.
42
43. Compiling with -d
• By default, the compiler puts a .class file in the same
directory as the .java source file
> This is fine for very small projects
• The -d option lets you tell the compiler in which directory
to put the .class file(s) it generates (d is for destination)
myProject
|
|--source
||
| |-- MyClass.java
|
|-- classes
|
|--
cd myProject
javac -d classes source/MyClass.java
43
45. • The last thing about -d that you'll need to know for the
exam is that if the destination directory you specify
doesn't exist, you'll get a compiler error.
• If, in the previous example, the classes directory did NOT
exist, the compiler would say something like:
• java:5: error while writing MyClass:
classes/MyClass.class (No such file or directory)
45
46. Launching Applications with java
• In Chapter 5 we talked about the assertion mechanism
and when you might use flags such as -ea or -da when
launching an application.
• java [options] class [args]
java -DmyProp=myValue MyClass x 1
• Sparing the details for later, this command can be read as "Create a system property called
myProp and set its value to myValue. Then launch the file named MyClass.
• class and send it two String arguments whose values are x and 1."
46
47. Using System Properties
If this file is compiled and invoked
as follows:
import java.util.*;
java -DcmdProp=cmdVal TestProps
public class TestProps {
public static void main(String[] args) { You'll get something like this:
...
Properties p =
os.name=Mac OS X
System.getProperties();
myProp=myValue
p.setProperty("myProp", "myValue");
...
p.list(System.out);
java.specification.vendor=Sun Microsystems Inc.
}
user.language=en
java.version=1.5.0_02
}
...
cmdProp=cmdVal
...
47
48. • When using the -D option, if your value contains white
space the entire value should be placed in quotes like
this:
• java -DcmdProp="cmdVal take 2" TestProps
48
49. Handling Command-Line Arguments
public class CmdArgs {
compiled and then invoked as follows
public static void main(String[]
java CmdArgs x 1
args) {
the output will be
int x = 0;
0 element = x
for(String s : args)
1 element = 1
System.out.println(x++ + "
element = " + s);
}
} The following are all legal declarations for main():
static public void main(String[] args)
public static void main(String... x)
static public void main(String bang_a_gong[])
49
50. Searching for Other Classes
Both java and javac use the same basic search algorithm:
1. They both have the same list of places (directories) they
search, to look for classes.
2. They both search through this list of directories in the same
order.
3. As soon as they find the class they're looking for, they stop
searching for that class. In the case that their search lists
contain two or more files with the same name, the first file
found will be the file that is used.
4. The first place they look is in the directories that contain the
classes that come standard with J2SE.
50
51. 5. The second place they look is in the directories defined by
classpaths.
6. Classpaths should be thought of as "class search paths." They
are lists of directories in which classes might be found.
7. There are two places where classpaths can be declared:
> A classpath can be declared as an operating system environment
variable. The classpath declared here is used by default, whenever java
or javac are invoked.
> A classpath can be declared as a command-line option for either java or
javac. Classpaths declared as command-line options override the
classpath declared as an environment variable, but they persist only for
the length of the invocation.
51
52. Declaring and Using Classpaths
• -classpath /com/foo/acct:/com/foo
• specifies two directories in which classes can be found:
/com/foo/acct and /com/foo
• the java and javac commands don't search the current
directory by default. You must tell them to search there.
:
.
• -classpath /com/foo/acct /com/foo:
52
53. It's also important to remember that
classpaths are searched from left to right.
•-classpath /com:/foo:.
•is not the same as
•-classpath .:/foo:/com
• Finally, the java command allows you to abbreviate classpath with -cp
53
54. Packages and Searching
import com.wickedlysmart.Utils;
class TestClass {
void doStuff() {
Utils u = new Utils(); // simple name
u.doX("arg1", "arg2");
com.wickedlysmart.Date d =
new com.wickedlysmart.Date(); // full name
d.getMonth("Oct");
}
}
54
55. • On Windows systems, classpath directories are delimited
with backward slashes, and paths are delimited with
semicolons:
-classpath .;dir_aclasses_a;dir_bclasses_b
• On POSIX-based systems, classpath directories are
delimited with forward slashes and paths are delimited
with colons:
• -classpath .:/dir_a/classes_a/:/dir_b/classes_b/
Again, the period represents the present (or current)
working directory.
55
58. • Check out the other JDK utilities at your disposal.
You can find them in the bin directory of your JDK.
JConsole in particular is a valuable GUI-based tool
that is used to monitor and manage Java
applications.
• Among the many features, JConsole allows for
viewing memory and thread usages. JConsole was
released with J2SE 5.0.
58
59. Compiling and Interpreting Java Code
• The Java compiler is invoked with the javac[.exe] command.
• The .exe extension is optional on Microsoft Windows machines and is not
present on UNIX-like systems.
• The compiler’s -d command-line option defines where compiled class files
should be placed.
• The compiler’s -d command-line option will include the package location if
the class has been declared with a package statement.
• The compiler’s -classpath command-line option defines directory paths in
search of classes.
• The Java interpreter is invoked with the java[.exe] command.
• The interpreter’s -classpath switch defines directory paths to use at runtime.
• The interpreter’s -D command-line option allows for the setting of system
property values.
• The interpreter’s syntax for the -D command-line option is -Dproperty=value.
• The interpreter’s -version command-line option is used to return the version
of the JVM and exit.
59