Introduction Flashcards

1
Q

Origin of Java

A

Java™ was first developed in the ’90s by James Gosling. It borrows much of its syntax from C and C++ to be more appealing to existing programmers at the time. Java was owned by Sun Microsystems, which was then acquired by Oracle in 2010.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What is Java?

A

Java is a statically-typed, general-purpose, object-oriented programming language.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What does statically-typed mean?

A

Statically-typed means that every variable and parameter must have a defined type (as opposed to languages like JavaScript which are dynamically typed).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What does object-oriented (OO) mean?

A

OO means that data and functions are grouped into objects.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What are Java’s advantages over C/C++?

A

Java code is compiled to byte-code which runs on a virtual machine (the Java Virtual Machine or JVM). The virtual machine handles garbage collection and allows Java to be compiled and run on any OS or hardware with a JVM.

This is an advantage over C/C++ which must be directly compiled to machine code and has no automatic garbage collection (the programmer needs to allocate and deallocate memory).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What are Java packages?

A

The standard implementation of Java comes in two different packages: the JRE (Java Runtime Environment) and the JDK (Java Development Kit). The JRE is strictly for running Java as an end-user, while the JDK is for developing Java code. The JDK comes with the javac command for compiling Java code to byte-code among other things.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

To make Java more open and community-based, Sun Microsystems started the Java community process (JCP), which allows a somewhat democratic evolution of Java and JVM specifications.

Also, Sun relicensed most of its Java technologies under the GNU General Public License in May 2007, resulting in multiple open-source implementations of JVM.

What is the current official implementation of JVM?

A

OpenJDK

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

The Java ecosystem is huge. It is mainly composed of JVM’s, libraries, tools, and IDE’s. What are the three most popular IDE’s?

A
  1. Eclipse6 - Open-source project by the Eclipse Foundation
  2. NetBeans7 - Sun’s (now Oracle’s) open-source Java IDE.
  3. IntelliJ IDEA8 - A commercial IDE with a community edition.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What are some of the most promising and new libraries and tools in the Java ecosystems?

A
  • Maven, Gradle, and other build tools.
  • Libraries for concurrent programming.
  • JUnit, Spock, and other test frameworks.
  • Groovy, Scala, and other JVM languages.
  • Grails, Play, and other web frameworks.
  • JVM Cloud Providers
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What is Java Development Kit (JDK)?

A

The core class type included in Java is called JDK. It includes all the basic tools we would need in a modern application, including everything from collection types and queues to web sockets, to files and image processing.

As an OO language, methods and propertized are organized into classes which are organized into packages. Each Java class should be defined in one file named for that class. The classes under java.lang such as String are readily available and do not need to be explicitly imported.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What is an object?

A

Object is an instance of a class.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

How are objects passed in Java?

A

All objects are passed by value. Unlike in C, we can not modify a reference poitner.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What is a particular aspect of Java relating to primitives?

A

Primitives are special types in Java that unlike objects, do not have methods and always have a value. In other words, they can not ever be null.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What to expect from this Java course by adam davis?

A

The course helps in the understanding of the latest features in Java, up to version 17. Primarily, it touches on cloud and microservices; build, test, and web frameworks; reactive programming in Java; and the best JVM languages.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly