<font face="微软雅黑" size=5 color=#660000 >
Java学习笔记Day18
一、今日学习:
面向对象第七节
二、学习目标
1、final关键字的使用
三、学习内容
1、final关键字:表示最终的不可变的。
(1)、final修饰的class对象不能被继承。
final public class Finally {
public static void man(){
}
}
public class Test01 extends Finally{
}//因为class加上了final修饰,所以Test01无法继承Finally。
(2)、final修饰的方法无法进行重写。
public class Finally {
final public static void man(){
System.out.println("666");
}
}
public class Test01 extends Finally{
public static void man(){//这里无法进行方法重写,因为继承的方法带有final,无法重写。
System.out.println("666");
}
}
(3)、final修饰的变量被赋值后,不能重写赋值(二次赋值)。
public static void main(String[] args) {
int a=1;
a=10;//没被final修饰的变量可以二次赋值
final int i=1;
i=10;//不合法,不能二次赋值
}
(4)、final修饰的实例变量,必须手动赋值,不能采用系统默认值。
public class Pet {
final int age;//一旦这样做,会报错,final修饰的实例变量不允许采用系统默认值
final int num=1;
public void eat(){
}
}
(5)、final修饰的引用一旦指向一个对象,不能再指向其他对象。
public class User {
public void idcard(int i){
System.out.println(i);
}
int id;
String name;
}
public static void main(String[] args) {
User u=new User();
//创建一个新的对象后,这里旧的u对象会被编程垃圾数据,等待垃圾回收器回收
u=new User();
}
public static void main(String[] args) {
final User u=new User();
//创建一个新的对象后,这里旧的u对象会被编程垃圾数据,等待垃圾回收器回收
u=new User();//因为有final修饰,所以u无法指向一个新的对象。
}
(6)、final修饰的实例变量;一般和static联合使用,称为常量。
public static final 类型 常量=值;
例如
public static final String GUO_JI = "中国";
四、java基础课程即将完成,下周开始复习计划。指定进阶学习计划。
人生苦短,我学python(java) |