java基础:final

一:例子

二:总结

1:  final修饰的变量的值不能被改变(final成员变量,final局部变量或者形参)

2:final修饰的方法不能被重写

3:final修饰的类不能被继承

时间: 2024-11-15 06:10:02

java基础:final的相关文章

[Java基础] final关键字

1.public static final String STRING = "Hello World!"; 修饰类成员变量,该变量在此处赋值后,不允许后面再对该值进行修改,这也就是通常所说的常量.声明常量时必须初始化! 2.public final String str = "Hello World"; 修饰对象成员变量,赋值后不可更改.与修饰类成员变量不同的是,声明时不一定非要初始化,详见第 3 点. 3.public final String str; 修饰对象

JAVA 基础--final 关键字的用法

在java中,final的含义在不同的场景下有细微的差别,in a word,它指的是“不可变的” 1.修饰数据.这里的可以看到被final修饰的变量,值不能被改变,但是 package FinalTest; public class FinalPerson { public String _name; public final int _age; public FinalPerson(String name, int age) { this._name = name; this._age =

Java基础-final关键字用在不同处的作用及区别

1.final修饰的类:不能被其他类继承:2.final修饰的方法:不能被子类重写3.final修饰的变量 先理解两个概念:基本类型变量.引用变量. 基本数据类型变量:存的是数值本身,存放在栈内存中: 引用类型变量:存的是数据的地址,数据存放于堆内存中,引用变量是以间接的方式获取数据的: final修饰的引用变量:一旦给其赋值,就不能被再次赋值(并非:不能改变其值) final String s = "32"; s = "1";//报错 final TestClas

Java基础-final和static的区别

很多时候会容易把static和final关键字混淆,static作用于成员变量用来表示只保存一份副本,而final的作用是用来保证变量不可变.看下面这个例子: public class Test { public static void main(String[] args) { MyClass myClass1 = new MyClass(); MyClass myClass2 = new MyClass(); System.out.println(myClass1.i); System.ou

Java基础-final变量和普通变量的区别

当用final作用于类的成员变量时,成员变量(注意是类的成员变量,局部变量只需要保证在使用之前被初始化赋值即可)必须在定义时或者构造器中进行初始化赋值,而且final变量一旦被初始化赋值之后,就不能再被赋值了. 那么final变量和普通变量到底有何区别呢?下面请看一个例子: public class Test { public static void main(String[] args) { String a = "hello2"; final String b = "he

java基础-final

java基础 : 成员变量访问控制及final关键字

用java做项目,但是发现很多java基础不是很清晰.(遇到一点学一点吧) 关键字: public protected  private default final public:所有地方都可以用, protected: 可以用于同一个类.或者同一个包里面.或者是不同包但是是他的子类, private:  只能用于同一类里面(可以是内部类哦). default: 同一个类里面.或者同一个包里面. final这个关键字的作用以前想着是一个不可以变动的常量(所以要在定义时的时候初始化),其实不能变动

java基础知识回顾之---java String final类之intern方法

public class StringObjectDemo { /** * @param args */ public static void main(String[] args) { String hello = "Hello", lo = "lo"; System.out.print((hello == "Hello") + " ");//true System.out.print((Other.hello == hel

java基础知识回顾之---java String final类普通方法的应用之“按照字节截取字符串”

/*需求:在java中,字符串“abcd”与字符串“ab你好”的长度是一样,都是四个字符.但对应的字节数不同,一个汉字占两个字节.定义一个方法,按照最大的字节数来取子串.如:对于“ab你好”,如果取三个字节,那么子串就是ab与“你”字的半个,那么半个就要舍弃.如果去四个字节就是“ab你”,取五个字节还是“ab你”.*/ 代码:其实是一个解码和编码的问题,要明白UTF-8码表和GBK码表的区别,UTF-8中用三个字节代表一个汉字,GBK使用2个字节代表一个汉字. 且在码表中都是用数字存放这些汉字.

java基础知识回顾之---java String final类 容易混淆的java String常量池内存分析

/** *   栈(Stack) :存放基本类型的变量数据和对象的引用,但对象本身不存放在栈中,而是存放在堆(new 出来的对象)或者常量池中(字符串常量对象存放  在常量池中). 堆(heap):存放所有new出来的对象. *   静态存储:存放静态成员(static定义的). 常量池(constant pool):在堆中分配出来的一块存储区域,存放储显式的String常量和基本类型常量(float.int等).另外,可以存储不经常改变的东西 *                       p