search
HomeJavaJavagetting StartedThe Road to Java Learning - Detailed Explanation of the Final Keyword

The Road to Java Learning - Detailed Explanation of the Final Keyword

1. Overview

After learning inheritance, we know that subclasses can rewrite the content of the parent class on the basis of the parent class, such as , method overriding. So can we freely inherit the classes provided in the API and rewrite their contents? Obviously this is inappropriate. In order to avoid this kind of random rewriting, Java provides final for modifying unchangeable content.

final: Unchangeable. Can be used to modify classes, methods and variables.

Class: The modified class cannot be inherited.

Method: The modified method cannot be overridden.

Variable: The modified variable cannot be reassigned.

Share free learning video tutorials: java video tutorial

2. How to use

Modification class

The format is as follows:

The Road to Java Learning - Detailed Explanation of the Final Keyword

Query the API and find things like public class final String, public class final Math,public class final Scanner etc., many of the classes we have studied are modified by final, the purpose is for us to use, and we do not allow us to change its content at will.

Modification method

The format is as follows:

The Road to Java Learning - Detailed Explanation of the Final Keyword

Note: Override the method modified by fianl , an error will be reported when compiling.

Modified variables

1. Local variables - basic types

Local variables of basic types can only be assigned values ​​after being modified by final Once, it cannot be changed again. The code is as follows:

The Road to Java Learning - Detailed Explanation of the Final Keyword

Think about the following two ways of writing, which one can be compiled?

Writing method 1:

The Road to Java Learning - Detailed Explanation of the Final Keyword

Writing method 2:

The Road to Java Learning - Detailed Explanation of the Final Keyword

According to the definition of final, writing method 1 reports an error ! Writing method 2, why compile? Because every time it loops, there is a new variable c. This is also something everyone needs to pay attention to.

2. Local variables - reference type

Local variables of reference type, after being modified by final, can only point to one object, and the address cannot be changed. However, it does not affect the modification of the member variable values ​​inside the object.

The code is as follows:

The Road to Java Learning - Detailed Explanation of the Final Keyword

3. Member variables

Member variables involve initialization issues and initialization methods There are two types, you can only choose one:

Display initialization

The Road to Java Learning - Detailed Explanation of the Final Keyword

Constructor initialization

The Road to Java Learning - Detailed Explanation of the Final Keyword

Note: Constant names modified by final generally have writing specifications, and all letters are capitalized.

If you want to learn more related tutorials, please visit Getting Started with Java Development

The above is the detailed content of The Road to Java Learning - Detailed Explanation of the Final Keyword. For more information, please follow other related articles on the PHP Chinese website!

Statement
This article is reproduced at:CSDN. If there is any infringement, please contact admin@php.cn delete

Hot AI Tools

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.

Undress AI Tool

Undress AI Tool

Undress images for free

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

MantisBT

MantisBT

Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

Dreamweaver Mac version

Dreamweaver Mac version

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

PhpStorm Mac version

PhpStorm Mac version

The latest (2018.2.1) professional PHP integrated development tool

WebStorm Mac version

WebStorm Mac version

Useful JavaScript development tools