JAVA Process
JAVA Process
# Date
Introduce yourself
1 12/5/2023
2 12/5/2023
3 12/5/2023
4 12/5/2023
5 12/5/2023
6 12/5/2023
7 12/5/2023
8 12/5/2023
9 12/5/2023
Object-Oriented programming
10 12/6/2023
11 12/6/2023
12 12/6/2023
13 12/6/2023
14 12/6/2023
15 12/6/2023
16 12/6/2023
17 12/6/2023
Collection
18 12/7/2023
19 12/7/2023
20 12/7/2023
21 12/7/2023
22 12/7/2023
23 12/7/2023
24 12/7/2023
25 12/7/2023
26 12/7/2023
27 12/7/2023
28 12/10/2023
29 12/10/2023
30 12/8/2023
31 12/8/2023
32 12/8/2023
33 12/8/2023
34 12/8/2023
35 12/8/2023
36 12/8/2023
37 12/8/2023
TO DO LIST
Priority Status
High Completed
High In Progress
High Completed
High Completed
High In Progress
High Completed
High In Progress
High In Progress
High In Progress
High Completed
High Completed
High Completed
High In Progress
High In Progress
High In Progress
High In Progress
High Not Started
High In Progress
High In Progress
High In Progress
High In Progress
High In Progress
High Not Started
High Not Started
High Not Started
High Not Started
High Not Started
# Question
1 Introduce Yourself
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
TO DO LIST
Answer
I studied at FPT University and I graduated with a degree in IT. So I can comprehend the
knowledge of OOP, database and some otherthing related to java.
Besides, I've been working at FPT Complex for 6 months as an internship BA. It's been a
great experience.
During my BA time, I have a lotta experience in writing Functional Specification. I think it will
be helpful in reading and understanding the document.
In addition, I joined testing with training by my mentor in the Liberty Insurance project.
Liberty Insurance project focused on providing insurance services such as auto or motorcycle
insurance and medical accident insurance.
I always strive to upgrade myself every day. In the next 2 years, I wanna gain experience as
a Java developer to understand the entire software development process, work in a position
related to system business, and collaborate with my colleagues in developing and building
the best system for our customers.
Additionally, I plan to improve my English skills. In the next 3 years, I will learn Japanese
cuz this market remains the biggest and offers many opportunities for my career
development in Vietnam.
1. Agile:
* Adventage:
- Approach: Iterative and incremental
- Can deliver working software quickly
- Flexibility: High so it suits the project having the change requirement on and on.
- Can reduce risk
* Disadventage:
- Requires a lot of communication and collaboration
2. Waterfall: is a sequential approach to project management that requires all project phases
to be completed in order before the next phase can begin.
* Adventage:
- Can be easier to manage than Agile
- Is good for projects with well-defined requirements
My biggest weakness is public speaking. It’s something that I’ve spent a lot of time self-
learning and using shadowing techniques and in which I’ve improved a great deal.
I’m very comfortable in smaller meetings with my teams. But when I present an idea I
struggle to describe it in detail in English
My greatest strength is good writing document skills. I think it's helpful to read the functional
specification from BA
"Throughout the internship, everyone has noticed that I am a combination of Appetite and
being patient. When given any task, I always strive to do my best. And if there is an
opportunity to gain more experience, I am always ready to take part in. For example, during
my business analysis internship, I joined the Figma hackathon. Although I only achieved 4th
place, it was a great experience that broadened my mind about UX/UI design."
To be honest, what really caught my eye was the good work environment
Attracted with Working that everything always follows a process. It's extremely professional.
In addition, I love your education program where you may for employees to learn technique
and skill sets
The Liberty Insurance project has a size of about 10 members. It's a website or an
application in provides insurance services such as auto or motorcycle insurance and medical
accident insurance. The scope is focused on creating the claim when Liberty employees are
on-site at the scene or cannot physically reach the location.
Through this project, I can understand the insurance business domain, how to write
Functional specifications and how to solve the issues.
I would like to hear about the salary of the company based on the requirements. I hope for a
salary in the range of 3 million VND to 4 million VND.
I am aware of my shortcomings, but I gonna strive to study and acquire new knowledge and
work hard to create value for the company and be eligible to give a higher salary.
0.0%
Priority Status
In Progress
Not Started
Total Activities
Completed Score
Total Score
% Completed
Completed Score
Total Score
% Completed
TO DO L
# Question
Overvie
Class and O
Static variables a
Encapsula
10 Encapsulation
Inheritan
11 Inheritance
12 @Override anotation
Polymorp
16
Abtracti
17
Excepti
22
23
24
25
TO DO LIST
Answer
Overview
is a model to solve programming issues that are easier to develop and maintain when
applying code. This is an advanced model that is suitable to develop the most applications
today
Wrapper class in java are used for data conversion. In data conversion if user wants to
convert Int to string, String to int, Boolean, double then we use Wrapper class.
integer.parseInt(); - To convert string to
Integer Double.parseDouble(); - To convert
string to Double Boolean.parse Boolean(); -
To convert string to Boolean String.valueof(); -
To convert Integer to String.
Static variables are the variables without having to initialize the object
Similar to Static variables, the method is used without having to initialize the object
If a class has multiple methods with the same name but different datatype or parameter
Making the code cleaner and easier to read
Encapsulation
is a mechanism of wrapping the variables that will be hidden from other classes by using
private declare and can be accessed only through the method of their current class
EX: talk about taikhoannganhang problem with private variable is sodu -> we can only
access sodu through the methods such as naptien method or ruttien method and can not
change the value of sodu
Inheritance
is a mechanism in java by which one class is allowed to inherit the filed and method of of
another class
Java is not support multiple inheritance
In order to override the parent class, the child class must have an equal or wider access
modifier than that of the parent class.
The equals method is a method of the Object class that is overridden by many classes to
provide a meaningful comparison.
Polymorphism
Abtraction
Data Abstraction means handling complications by hiding unnecessary details from the user.
In Java, abstraction is achieved by interfaces and abstract classes.
1. Interface:
- is supported by multiple inherit
- can only declare method but this method doesn't have body
- Access modifiers is all public about method and property
2. Abstract:
- is single inheritance
- can define method and property
- access modifiers can determine the modifier
Exception
Exception is like any interruption in our normal flow. Like if we are running anything and we
got issues in our script this is we called exception, we have 2 types of exception Run Time &
Compile Time. (checked & Unchecked exceptions)
Throw is a keyword used inside a body of function. And Throws used while initializing any
method. By using Throw we can throw only one exception while for Throws we can declare
multiple exceptions which might occur in that particular function. Throws keyword followed
by instance name and Throw keyword is followed by class name of that exception.
0.0%
Priority Status
Not Started
Total Activities
Completed Score
Total Score
% Completed
% Completed
# Question
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
TO DO LIST
Answer
There are three common ways to iterate through a Collection in Java using eith
ArrayList:
- uses a dynamic array to store the elements
- Manipulation with ArrayList is slow because it internally uses an
array. When removed element from array -> the other element will
moved to blank index, so reduce performance
- An ArrayList class can act as a list only because it implements List
only.
- To be precise, an ArrayList is a resizable array.
ArrayList
- ArrayList is not synchronized.
- ArrayList increments 50% of current array size if the number of
elements exceeds from its capacity.
- ArrayList is not a legacy class. Classes and interfaces that formed the
collections framework in the older version of Java are known as Legacy
classes such as: hashtable, stack, dictionary, properties, vector
- ArrayList is fast because it is non-synchronized.
HashMap
- based implementation of Map interface.
- store a key-value pair
- It does not allow duplicate keys, but duplicate values are allowed.
- put() method to add the elements
- HashMap is faster/ than HashSet because values are associated with
a unique key.
HashMap
- is not synchronized.
- can contain null values
TO DO LIST
Answer
Linked List
- uses a doubly linked list to store the elements.
- Manipulation with LinkedList is faster than ArrayList because it simply
updates the links between nodes. No need to move elements like in
ArrayList.
- LinkedList class can act as a list and queue both because it implements
List and Deque interfaces.
Vector
- Vector is synchronized.
- Vector increments 100% means doubles the array size if the total
number of elements exceeds than its capacity.
- Vector is a legacy class.
- Vector is slow because it is synchronized, i.e., in a multithreading
environment, Threads may have to wait for a long time if there are many
action, leading to slow processing.
HashSet
- based implementation of Set interface.
- store objects
- It does not allow duplicate values.
- add() method to add elements
- HashSet is slower than HashMap
HashTable
- is synchronized.
- can not contain null values
0.0%
Priority Status
In Progress
Not Started
Total Activities
Completed Score
Total Score
% Completed
Completed Score
Total Score
% Completed
TO DO L
# Question
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
TO DO LIST
Answer
Using "For" loop to iterate the element of the array from the last element to the first element
and print every element to screen.
I think I use hashmap to solve this problem, cuz hashmap consists of key-value pair with the
key is the specific element and the value is the count of elements in the array.
I'll use containsKey() to check if a key exists; if true, I'll increment its value. Otherwise, I'll
utilize put() to add a new key-value pair.
It employs three pointers (i, j, k) to compare and merge elements sequentially from both
arrays while maintaining the sorted order.
Mean that using while loop If array one with index I less than array two with index J, then
array with index k equal array with index I AND increment I and K . Otherwise array k equal
array with index J AND increment J and K
0.0%
Priority Status
In Progress
Not Started
Total Activities
Completed Score
Total Score
% Completed
Completed Score
Total Score
% Completed