阿里Java学习路线:阶段 1:Java语言基础-Java面向对象编程:第13章: 覆写:课时66:final关键字

final在程序之中描述的是种终接器的概念,在java里面使用final关键字可以实现如下的功能:定义不能够被继承的类、定义不能够被覆写的方法、常量。
范例:使用final定义不能被继承类

final class Channel {} // 这个类不能够有子类

当子类继承了父类之后实际上是可以进行父类中方法覆写的,但是如果你现在不希望你的某一个方法被子类所覆写就可以使用final来进行定义。
范例:定义不能够被覆写的方法

class Channel { // 这个类不能够有子类
	public final void connect() {}
}
class DatabeseChannel extends Channel { // 错误的
	public void connect() {}
}

在有一些系统开发之中,可能使用1表示开关打开、使用0表示开关关闭,但是如果说现在要是直接操作0或者1,则会造成混乱,所以就希望可以通过一些名称来表示0或者1。在final关键字里面有一个重要的应用技术:可以利用其定义常量,常量的内容一旦定义则不可修改。
范例:final定义常量

class Channel { // 这个类不能够有子类
	private final int ON = 1 ; // ON就是常量
	private final int OFF = 0 ; // OFF就是常量
	public final void connect() {
		ON = 2 ;
	}
}
public class JavaDemo {
	public static void main(String args[]) {
		
	}
}

实际上常量往往都是公共的定义,所以为了可以体现出共享的概念,往往会使用一种全局常量的形式来定义,使用public static final来定义全局常量。

	public static final int ON = 1 ; // ON就是常量
	public static final int OFF = 0 ; // OFF就是常量

在定义全局常量的时候每一个字母必须大写表示。
范例:观察一个程序代码

public class JavaDemo {
	public static void main(String args[]) {
		final String info = "mldn" ;
		String strA = "www.mldn.cn" ;
		String strB = "www." + info + ".cn" ;
		System.out.println(strA == strB) ;
	}
}

在方法的时候也可以使用final来定义参数,此时也表示一个常量的概念。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值