Home Java JavaInterview questions Java latest basic knowledge interview questions

Java latest basic knowledge interview questions

Nov 13, 2019 pm 05:51 PM
java Base Interview questions

Java latest basic knowledge interview questions

java latest basic knowledge interview questions

1. What does the static keyword mean? Is it possible to override a private or static method in Java?

"static" indicates that a member variable or member method can be accessed without an instance variable of the class to which it belongs.

static methods in Java cannot be overridden because method overrides are based on dynamic binding at runtime, while static methods are statically bound at compile time. Static methods are not associated with any instance of the class.

Private methods cannot be overridden in java. Because the variables and methods modified by private can only be used in the current class, if other classes inherit the current class, the private variables and methods cannot be accessed in the inherited class.

2. Can it be used in static Access non-static variables in the environment?

cannot. Static variables belong to classes. When a class is loaded by the virtual machine, static variables are initialized. Non-static variables belong to instances. At this time, the instance has not been created, and the compiler will report an error

3. Java basic types, what is automatic unboxing?

Basic types: byte, short, int, float, long, double, boolean, char

Autoboxing: It is the java compiler that wraps the basic types and corresponding object types Make a conversion between them. For example, convert int to Integer, etc. On the contrary, it is automatic unboxing

4. What does Java method overriding and method overloading mean?

Method overloading in Java occurs when there are two or more methods with the same name but different parameters in the same class. Method overriding is a method for a subclass to redefine a parent class. Method overrides must have the same method name, parameter list and return type

5. What is a constructor in Java? What is constructor overloading? What is copy constructor?

When a new object is created, the constructor will be called. Each class has a constructor. When no constructor is provided for the class, the compiler will automatically create a default constructor.

Constructor method overloading in Java is very similar to method overloading. Multiple constructors can be created for a class, and each constructor must have its own unique parameter list

6. Does Java support multiple inheritance?

not support. Only single inheritance is supported, that is, a class has only one parent class. Implements can be used to implement multiple interface extensions

7. The difference between interfaces and abstract classes

1. All methods in the interface are implicitly abstract. An abstract class can contain both abstract and non-abstract methods

2. The variables declared in the interface are final by default, while the abstract class can contain non-final variables

3. Member functions are public by default. The member functions of an abstract class can be private, protected or public

4. The class does not need to implement all the methods in the abstract class and interface declaration. In this case, the class must also be declared abstract

8. What is the difference between jdk and jre?

The java runtime environment (jre) is the java virtual machine of the java program to be executed, and also contains the browser plug-ins required to execute the applet. The java development kit (jdk) is a complete java software development package, including jre, compiler and other tools (such as javadoc, java debugger), which allows developers to develop, compile and execute java applications

9. What is value transfer and reference transfer?

Value transfer is for basic type variables. The transfer is a copy of the variable. Changing the copy will not affect the original variable

Passing by reference is generally for object-type variables. What is passed is a copy of the object address. Changing the copy will affect the original variable

10. What is the difference between a process and a thread?

A process is an executing application, and a thread is an execution sequence within the process. A process can have multiple threads

Differences:

1. Address space and other resources: processes are independent of each other. Shared between threads of the same process. Threads in a process are not visible in other processes

2. Communication: IPC communication between processes, threads can directly read and write process data segments (such as global variables) for communication - the assistance of process synchronization and mutual exclusion is required to ensure data consistency

3 .Scheduling and switching: Context switching between threads is much faster than process context switching

4. In multi-threaded OS, the process is not an executable entity

11. Synchronization The difference between methods and synchronized code blocks

The synchronized method defaults to using this or the current class object as the lock

The synchronized code block can choose what to lock, which is more detailed than the synchronized method granularity. We can choose to synchronize only the part of the code that will cause synchronization problems instead of the entire method

12. Deadlock

Deadlock is caused by multiple threads due to resource competition. A kind of deadlock in which none of these threads can move forward without external force. 4 necessary conditions for deadlock

1. Mutual exclusion condition

2. Non-deprivation condition

3. Request and hold conditions

4. Loop waiting

13. How to ensure that N threads can access N resources without causing deadlock?

A very simple way to avoid deadlock: specify the order in which locks are acquired, and force threads to acquire locks in the specified order. Therefore, if all threads lock and release locks in the same order, there will be no deadlock

14. What are the basic interfaces of the Java collection class framework?

Collection, Set, List, Map

15. Working principle of HashMap

hashMap is stored in the form of key-value pairs. Hashmap requires a hash function, which uses hashCode and equals methods to add and retrieve elements to/from the collection. When put is called, HashMap calculates the hash value of the key and stores the key-value pair at the appropriate index in the collection. If the key already exists, the value will be updated to the new value. Some important features of hashMap are its capacity, load factor and expansion limit

16. Where is the importance of hashcode and equals reflected

hashmap passes hashcode and equals Determine the key-value pair index

17, the difference between hashmap and hashtable?

hashmap allows keys and values ​​to be null, hashtable does not allow keys or values ​​to be null

hashtable synchronization, but hashmap is not

php Chinese website, a lot of free Java Introduction Tutorial, welcome to learn online!

The above is the detailed content of Java latest basic knowledge interview questions. For more information, please follow other related articles on the PHP Chinese website!

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undress AI Tool

Undress AI Tool

Undress images for free

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

Hot Topics

PHP Tutorial
1580
276
How to send and receive messages over a WebSocket in Java How to send and receive messages over a WebSocket in Java Aug 16, 2025 am 10:36 AM

Create a WebSocket server endpoint to define the path using @ServerEndpoint, and handle connections, message reception, closing and errors through @OnOpen, @OnMessage, @OnClose and @OnError; 2. Ensure that javax.websocket-api dependencies are introduced during deployment and automatically registered by the container; 3. The Java client obtains WebSocketContainer through the ContainerProvider, calls connectToServer to connect to the server, and receives messages using @ClientEndpoint annotation class; 4. Use the Session getBasicRe

How to configure logging in a Java application? How to configure logging in a Java application? Aug 15, 2025 am 11:50 AM

Using SLF4J combined with Logback or Log4j2 is the recommended way to configure logs in Java applications. It introduces API and implementation libraries by adding corresponding Maven dependencies; 2. Get the logger through the LoggerFactory of SLF4J in the code, and write decoupled and efficient log code using parameterized logging methods; 3. Define log output format, level, target (console, file) and package level log control through logback.xml or log4j2.xml configuration files; 4. Optionally enable the configuration file scanning function to achieve dynamic adjustment of log level, and SpringBoot can also be managed through Actuator endpoints; 5. Follow best practices, including

How to deploy a Java application How to deploy a Java application Aug 17, 2025 am 12:56 AM

PrepareyourapplicationbyusingMavenorGradletobuildaJARorWARfile,externalizingconfiguration.2.Chooseadeploymentenvironment:runonbaremetal/VMwithjava-jarandsystemd,deployWARonTomcat,containerizewithDocker,orusecloudplatformslikeHeroku.3.Optionally,setup

phpMyAdmin security best practices phpMyAdmin security best practices Aug 17, 2025 am 01:56 AM

To effectively protect phpMyAdmin, multiple layers of security measures must be taken. 1. Restrict access through IP, only trusted IP connections are allowed; 2. Modify the default URL path to a name that is not easy to guess; 3. Use strong passwords and create a dedicated MySQL user with minimized permissions, and it is recommended to enable two-factor authentication; 4. Keep the phpMyAdmin version up to fix known vulnerabilities; 5. Strengthen the web server and PHP configuration, disable dangerous functions and restrict file execution; 6. Force HTTPS to encrypt communication to prevent credential leakage; 7. Disable phpMyAdmin when not in use or increase HTTP basic authentication; 8. Regularly monitor logs and configure fail2ban to defend against brute force cracking; 9. Delete setup and

Excel autofill not working Excel autofill not working Aug 15, 2025 pm 01:19 PM

EnsureAutoFillisenabledbychecking"Enablefillhandleandcelldrag-and-drop"inFile>Options>Advanced;2.Correctlyusethefillhandle—thesmallsquareatthebottom-rightoftheselectedcell—draggingwiththeblackpluscursor,notthewhitearrow;3.Unmergecells

You are not currently using a display attached to an NVIDIA GPU [Fixed] You are not currently using a display attached to an NVIDIA GPU [Fixed] Aug 19, 2025 am 12:12 AM

Ifyousee"YouarenotusingadisplayattachedtoanNVIDIAGPU,"ensureyourmonitorisconnectedtotheNVIDIAGPUport,configuredisplaysettingsinNVIDIAControlPanel,updatedriversusingDDUandcleaninstall,andsettheprimaryGPUtodiscreteinBIOS/UEFI.Restartaftereach

What is the assert keyword in Java? What is the assert keyword in Java? Aug 17, 2025 am 12:52 AM

TheassertkeywordinJavaisusedtovalidateassumptionsduringdevelopment,throwinganAssertionErroriftheconditionisfalse.2.Ithastwoforms:assertcondition;andassertcondition:message;withthelatterprovidingacustomerrormessage.3.Assertionsaredisabledbydefaultandm

Using XSLT Parameters to Create Dynamic Transformations Using XSLT Parameters to Create Dynamic Transformations Aug 17, 2025 am 09:16 AM

XSLT parameters are a key mechanism for dynamic conversion through external passing values. 1. Use declared parameters and set default values; 2. Pass the actual value from application code (such as C#) through interfaces such as XsltArgumentList; 3. Control conditional processing, localization, data filtering or output format through $paramName reference parameters in the template; 4. Best practices include using meaningful names, providing default values, grouping related parameters, and performing value verification. The rational use of parameters can make XSLT style sheets highly reusable and maintainable, and the same style sheets can produce diversified output results based on different inputs.

See all articles