java final 和instanceof 关键字的区别
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");
}
}
相关文章
SpringCloud Netflix Ribbon超详细讲解
这篇文章主要介绍了SpringCloud笔记HoxtonNetflix之Ribbon负载均衡,Ribbon是管理HTTP和TCP服务客户端的负载均衡器,Ribbon具有一系列带有名称的客户端(Named Client),对SpringCloud Ribbon负载均衡相关知识感兴趣的朋友一起看看吧2022-10-10Spring中@RestControllerAdvice注解的使用详解
这篇文章主要介绍了Spring中@RestControllerAdvice注解的使用详解,@RestControllerAdvice是一个组合注解,由@ControllerAdvice、@ResponseBody组成,而@ControllerAdvice继承了@Component,需要的朋友可以参考下2024-01-01
最新评论