Java中final关键字的用法

Java关键字final有“最终”的意思,也可以称为完结器,可以用来声明类、属性和方法,当然被修饰类、属性和方法都必须是非抽象类的

一. final声明类

使用final声明的类不能有子类,不能被继承,可以形象地成为太监类。Java中String类就是final类型的。

final class A{
}
class B extends A{
}

需要注意的是:final类中的成员方法默认为final类型的

二.final声明方法

final声明的方法不能被覆写,但可以被继承。注意:类的private方法默认为final方法,所以private方法不能被覆写

如果你认为一个方法的功能已经足够完整了,子类中不需要改变的话,你可以声明此方法为final

class A{
    public final void print(){
        System.out.println("Hello");
    }
}
class B extends A{
    public void print(){
        System.out.println("World");
    }
}


下面是final方法被继承的例子:

class A{
    public final void print(){
        System.out.println("Hello");
    }
}
class B extends A{
}
public class FinalDemo{
    public static void main(String[] args){
	B b = new B();
	b.print();
    }
}

三.final声明变量
用final修饰的成员变量表示常量,一旦给final变量初始化后,值就不能再改变了,需要注意的是常量所有字母都必须大写。如果final修饰的是引用类型的变量,则其初始化后引用不会再发生改变,但是可以改变引用指向的值

class Person{
	public final int NUM = 1;
	public Person(){
		NUM = 2;
		final Object obj = new Object();
		obj = new Object();
	}
}


四.static final声明全局常量

使用static final 关键字联合声明的变量称为全局常量

定义格式:public static final String NAME = "Jack";

参考链接:

http://lavasoft.blog.51cto.com/62575/18771/

http://www.cnblogs.com/dolphin0520/p/3736238.html


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值