java final 和instanceof 关键字的区别
java final 和instanceof 关键字的区别
发布时间:2016-12-28 来源:查字典编辑
摘要:final可以适用的范围:修饰类:使用这种修饰符的类无法被继承修饰函数:被修饰的不能被重写修饰属性:1.final修饰的成员变量是常量,值不...

final 可以适用的范围:

修饰类:使用这种修饰符的类无法被继承

修饰函数:被修饰的不能被重写

修饰属性:

1.final修饰的成员变量是常量,值不能被修改

而java的命名规则:常量都要大写

当形参变量使用final修饰基本类型变量,在函数中该变量不能被修改

引用类型变量:不能改变地址

复制代码 代码如下:

/* final class A

{

public final void eat(){

System.out.println("测试");

}

} */

class A

{

}

class B extends A

{

//测试

public void eat(){

System.out.println("不能重写父类的方法");

}

static final double PI=3.1415926;

public void test( final int x,int y){

//x=12; 这里是不能改变的

y=33;

System.out.println("x="+x+"y="+y);

}

public void test( final int[] x){

//表示传过来的数组的地址 可以改变里面的值

x[0]=1;

//这里也是错误的!!!x=new int[]{23};

System.out.println(x[1]);

}

}

class Demo4

{

public static void main(String[] args)

{

new B().test(2,3);

new B().test(new int[]{20,3});

A a =new A();

B b=new B();

System.out.println("a 是否是B的对象(实例) ");

System.out.println("instanceof "+(a instanceof A));

System.out.println("instanceof "+(a instanceof B));

System.out.println("instanceof "+(b instanceof B));

System.out.println("instanceof "+(b instanceof A));

System.out.println("final");

}

}

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新Java学习
热门Java学习
编程开发子分类