java1234开源博客系统
博客信息

Java面向对象-final关键字

发布时间:『 2016-10-08 18:48』  博客类别:Java核心基础  阅读(6956) 评论(0)

Java面向对象-final关键字


final是终结 完结的意思;


使用final声明的类不能被继承;

使用final声明的方法不能被子类覆盖;

使用final声明的变量不能被修改,即为常量;


1,final修饰类


我们建一个僵尸类:

package com.java1234.chap03.sec10;

/**
 * 僵尸类
 * @author user
 *
 */
public final class JiangShi {

}


这类是final修饰的,我们再建一个Test类 继承JiangShi类:

QQ鎴浘20161008182201.jpg


我们发现 编译报错了 说不能继承final类;


2,final修饰方法


我们再新建一个类 ,加一个final方法:

package com.java1234.chap03.sec10;

public class People {

	public final void action(){
		System.out.println("做一个良好公民!");
	}
}


我们搞一个类继承下People类:

QQ鎴浘20161008182804.jpg


我们发现,编译出错,说不能重写父类final方法;




3,final修饰的变量


我们在People类搞一个final属性,然后在方法里修改这个属性;

QQ鎴浘20161008183820.jpg


我们发现,编译出错,说final字段不能修改;


final修饰字段的时候 一般和static一起使用,来定义一些不可变的静态常量 方便程序使用;

package com.java1234.chap03.sec10;

public class Common {

	/**
	 * 静态常量
	 */
	public static final String CHINA_CAPITAL="北京";
}


我们调用的话 直接类名.属性 即可;

package com.java1234.chap03.sec10;

public class Test{

	public static void main(String[] args) {
		System.out.println(Common.CHINA_CAPITAL);
	}
}



关键字:   java     final  
关注Java1234微信公众号
博主信息
Java1234_小锋
(知识改变命运,技术改变世界)
Powered by Java1234 V3.0 Copyright © 2012-2016 Java知识分享网 版权所有