final关键字

来源:互联网 发布:数据库 什么是触发器 编辑:程序博客网 时间:2024/06/05 19:44

final修饰基本引用类型

public class FinalDemo {final int NUM1 = 100;//在定义的同时,进行初始化final int NUM2;FinalDemo( ){this.NUM2 = 200;//在构造方法中初始化}public static void main(String[] args) {// TODO Auto-generated method stubFinalDemo f = new FinalDemo();f.NUM2 = 300;//错误,final类型不可改变}}

fianl修饰对象,对象不能改变,但对象的值可以改变

public class FinalDemo {final Person p;FinalDemo( ){p = new Person("wangwu", 18);}public static void main(String[] args) {FinalDemo f = new FinalDemo();f.p.showInfo();//f.p = new Person("zhaosi", 40);    //错误f.p.name = "无名氏";f.p.showInfo();}}

final关键字修饰方法表示该方法不能被重写

fianl关键字修饰类表示该类不能被继承

final关键字修饰形参

1.基本数据类型:值不能改变‘

2.引用数据类型:对象的值能改变,但对象不能改变


被定义为final的常量需要定义时使用大写字母命名,并且中间需要使用下划线进行连接。

package com.lzw;import java.util.Random;public class RandomDemo {private static Random rand = new Random();//随机产生0~10之间的随机数赋予定义为final的a1private final int a1 = rand.nextInt(10);//随机产生0~10之间的随机数赋予定义为final的a2private static final int a2 = rand.nextInt(10);public static void main(String[] args) {RandomDemo random1 = new RandomDemo();System.out.println("random1实例化对象a1的值"+random1.a1);System.out.println("random1实例化对象a2的值"+random1.a2);RandomDemo random2 = new RandomDemo();System.out.println("random2实例化对象a1的值"+random2.a1);System.out.println("random2实例化对象a2的值"+random2.a2);}}



0 0
原创粉丝点击