标签:style blog color 使用 java ar strong 数据 2014
final:
final 可以修饰类、方法、变量
final 修饰的类不可以被继承
final 修饰的方法不可以被覆盖如下代码:
class father { void show() { System.out.println("ni hao ");//父类的方法已经调用了底层系统 } } class son extends father { void show() { System.out.println(" no ");//子类一覆盖,父类原有的功能挂了 } } public class Main { public static void main(String[] args) { son s = new son(); s.show(); } }
还有final修饰的变量,final x = 9变成一个常量,也就是把该变量固定住了,类似于const int x = 9;
且只能被赋值一次
class father { void show() { final int x = 9; x = 10;//编译失败 System.out.println(x); } }
class father { void show() <span style="white-space:pre"> </span>{ final int x;//编译失败,因为没有初始化,对于成员而言,有默认初始化值,而final固定的是显示初始化值 System.out.println(x); } }
class father { void show() { final int x; x = 10; System.out.println(x); x = 10;//编译失败 } }
变量的书写规范
java中书写格式:
变量:如果由多个单词所组成,第一单词首字母小写,从第二个单词首字母开始每个单词首字母大写,书写格式和函数一样
常量:所有字母都大写,如果单词不唯一,单词与单词之间用下划线连接 double MY_PI;
如果某个值固定不变,就没必要每个对象都知道,那么这个数据就说明可以是被共享的
class father { static final int x = 8;//所以可以用static修饰,成员如果被final了,一般都会加static void show() { System.out.println(x); } }这样就可以直接被类名使用
class father { static final int x = 8; } public class Main { public static void main(String[] args) { System.out.print(father.x); } }
class father { private static final int x = 8; }
全局常量
class father { public static final int x = 8; }
为什么要用final修饰变量,在程序中如果一个数据是固定的,那么直接使用这个数据就可以了,但是这个数据的阅读性差,这个数据还要屡次写,一旦要更改数据,书写起来较麻烦,所以加final 给这个数据起个名字,这个名字就代表了这个数据,书写方便,方便修改
JAVA学习第十二课(关键字三final:针对extends打破封装性)
标签:style blog color 使用 java ar strong 数据 2014
原文地址:http://blog.csdn.net/wjw0130/article/details/39326545