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");
    }

}

(0)

相关推荐

  • 深入解析Java编程中final关键字的使用

    在Java中声明属性.方法和类时,可使用关键字final来修饰.final变量即为常量,只能赋值一次:final方法不能被子类重写:final类不能被继承. 1.final成员 声明 final 字段有助于优化器作出更好的优化决定,因为如果编译器知道字段的值不会更改,那么它能安全地在寄存器中高速缓存该值.final 字段还通过让编译器强制该字段为只读来提供额外的安全级别.   1.1关于final成员赋值 1)在java中,普通变量可默认初始化.但是final类型的变量必须显式地初始化.   2

  • 深入理解Java中的final关键字_动力节点Java学院整理

    Java中的final关键字非常重要,它可以应用于类.方法以及变量.这篇文章中我将带你看看什么是final关键字?将变量,方法和类声明为final代表了什么?使用final的好处是什么?最后也有一些使用final关键字的实例.final经常和static一起使用来声明常量,你也会看到final是如何改善应用性能的. final关键字的含义? final在Java中是一个保留的关键字,可以声明成员变量.方法.类以及本地变量.一旦你将引用声明作final,你将不能改变这个引用了,编译器会检查代码,如

  • java 中的static关键字和final关键字的不同之处

    static 1.在类中,用static修饰的属性,称为静态属性.为这个类的所有对象所共有,存放在静态存储区,所有该类的对象都可以访问且访问的都是同一变量.可以用作计数器,来统计总共创建了多少个各类的对象. 2.在类中,用static 修饰的方法为静态方法,在静态方法中不可以访问非静态的属性和方法,但在非静态方法中可以访问静态方法和属性:且static方法多态失效,不能使用this. 3.由于静态属性和方法是属于该类的所有对象的,所以可以用类名.静态属性/方法名---来访问. 4.static

  • java中final关键字使用示例详解

    final经常和static一起使用来声明常量,你也会看到final是如何改善应用性能的.final关键字的含义?final在Java中是一个保留的关键字,可以声明成员变量.方法.类以及本地变量.一旦你将引用声明作final,你将不能改变这个引用了,编译器会检查代码,如果你试图将变量再次初始化的话,编译器会报编译错误.什么是final变量?凡是对成员变量或者本地变量(在方法中的或者代码块中的变量称为本地变量)声明为final的都叫作final变量.final变量经常和static关键字一起使用,

  • java关键字final使用方法详解

    它所表示的是"这部分是无法修改的".不想被改变的原因有两个:效率.设计.使用到final的有三种情况:数据.方法.类. 一. final数据 有时候数据的恒定不变是很有用的,它能够减轻系统运行时的负担.对于这些恒定不变的数据我可以叫做"常量"."常量"主要应用与以下两个地方:1.编译期常量,永远不可改变.2.运行期初始化时,我们希望它不会被改变.对于编译期常量,它在类加载的过程就已经完成了初始化,所以当类加载完成后是不可更改的,编译期可以将它代入

  • 详解Java编程中static关键字和final关键字的使用

    Java static关键字以及Java静态变量和静态方法 static 修饰符能够与变量.方法一起使用,表示是"静态"的. 静态变量和静态方法能够通过类名来访问,不需要创建一个类的对象来访问该类的静态成员,所以static修饰的成员又称作类变量和类方法.静态变量与实例变量不同,实例变量总是通过对象来访问,因为它们的值在对象和对象之间有所不同. 请看下面的例子: public class Demo { static int i = 10; int j; Demo() { this.j

  • Java中final关键字详解

    谈到final关键字,想必很多人都不陌生,在使用匿名内部类的时候可能会经常用到final关键字.另外,Java中的String类就是一个final类,那么今天我们就来了解final这个关键字的用法. 主要介绍:一.final关键字的基本用法.二.深入理解final关键字 一.final关键字的基本用法 在Java中,final关键字可以用来修饰类.方法和变量(包括成员变量和局部变量).下面就从这三个方面来了解一下final关键字的基本用法. 1.修饰类 当用final修饰一个类时,表明这个类不能

  • java final 和instanceof 关键字的区别

    final 可以适用的范围:修饰类:使用这种修饰符的类无法被继承 修饰函数:被修饰的不能被重写 修饰属性:1.final修饰的成员变量是常量,值不能被修改      而java的命名规则:常量都要大写 当形参变量使用final修饰基本类型变量,在函数中该变量不能被修改   引用类型变量:不能改变地址 复制代码 代码如下: /* final class A{    public final void eat(){        System.out.println("测试");    }

  • Java final static abstract关键字概述

    一,抽象类:abstract 1,只要有一个或一个以上抽象方法的类,必须用abstract声明为抽象类; 2,抽象类中可以有具体的实现方法; 3,抽象类中可以没有抽象方法; 4,抽象类中的抽象方法必须被它的子类实现,如果子类没有实现,则该子类继续为抽象类 5,抽象类不能被实例化,但可以由抽象父类指向的子类实例来调用抽象父类中的具体实现方法;通常作为一种默认行为; 6,要使用抽象类中的方法,必须有一个子类继承于这个抽象类,并实现抽象类中的抽象方法,通过子类的实例去调用; 二,接口:interfac

  • Java中的instanceof关键字在Android中的用法实例详解

    在下面介绍Android中如何使用instanceof关键字开发更方便时,先来温习一下java中instanceof的概念. instanceof大部分的概念是这样定义的:instanceof是Java的一个二元操作符,和==,>,<是同一类东西.由于它是由字母组成的,所以也是Java的保留关键字.它的作用是测试它左边的对象是否是它右边的类的实例,返回boolean类型的数据.举个栗子: String s = "I AM an Object!"; boolean isObj

  • Java深入讲解instanceof关键字的使用

    目录 instanceof关键字的使用 1. 语法格式 2. 类型转换 (Casting) 2.1 基本数据类型的Casting 2.2 对象类型转换 2.3 代码演示 3. 错误举例 instanceof关键字的使用 1. 语法格式 x instanceof A:检验x是否为类A的对象,返回值为boolean类型,如果是,返回true:如果不是,返回false. 要求x所属的类与类A必须是子类和父类的关系,否则编译错误 如果x属于类A的子类B,x instanceof A值也为true pub

  • java 中的instanceof用法详解及instanceof是什么意思(推荐)

    好,应大家的要求先给大家说下在JAVA程序中instanceof是什么意思 instanceof是Java的一个二元操作符,和==,>,<是同一类东东.由于它是由字母组成的,所以也是Java的保留关键字.它的作用是测试它左边的对象是否是它右边的类的实例,返回boolean类型的数据. instanceof运算符用法 运算符是双目运算符,左面的操作元是一个对象实例,右面是一个类.当左面的对象是右面的类创建的对象时,该运算符运算的结果是true,否则是false 说明: (1).一个类的实例包括本

  • Java中final,finally,finalize三个关键字的区别_动力节点Java学院整理

    final 当这个关键字修饰一个类时,意味着他不能派生出新的子类,也就是说不能被继承,因此一个类不能被同时声明为abstract和final.当final修饰变量或者方法时,可以保证他们在使用中不会被改变.被声明为final的变量必须在初始化时给定初值,以后在使用时只能被引用而不能被修改.同样,当final修饰一个方法时,这个方法不能被重载. finally 异常处理时提供finally来执行任何清楚操作.如果抛出一个异常,那么相匹配的catch子句就会被执行,然后控制就会转入finally块.

  • 全面解析java final关键字

    根据上下文环境,Java 的关键字 final 的含义有些微的不同,但通常它指的是"这是不能被改变的".防止改变有两个原因:设计或效率.因为这两个原因相差很远,所以有可能误用关键字 final. 以下几节讨论了可能使用 final 的三个地方:数据.方法和类. 1)final 数据 对于编译时常量这种情况,编译器可以把常量带入计算中,可以减少了一些运行时的负担.在 Java 中,这类常量必须是基本类型,而且用关键字 final 修饰.你必须在定义常量的时候进行赋值. 带有恒定初始值的

  • Java中final,finally,finalize 有什么区别

    目录 1.final 介绍 1.1 final 用法说明 1.2 final 用法展示 2.finally 介绍 2.1 finally 用法展示 2.2 finally 扩展 3.finalize 介绍 3.1finalize 性能问题 4.总结 重要说明:本篇为博主<面试题精选-基础篇>系列中的一篇,查看系列面试文章请关注我. Gitee 开源地址:gitee.com/mydb/interv- 1.final 介绍 final 是 Java 语言中的一个关键字,使用 final 修饰的对象

  • Java中instanceof关键字的用法总结

    java 中的instanceof 运算符是用来在运行时指出对象是否是特定类的一个实例.instanceof通过返回一个布尔值来指出,这个对象是否是这个特定类或者是它的子类的一个实例. 用法: result = object instanceof class 参数: Result:布尔类型. Object:必选项.任意对象表达式. Class:必选项.任意已定义的对象类. 说明: 如果 object 是 class 的一个实例,则 instanceof 运算符返回 true.如果 object

  • java 中newInstance()方法和new关键字的区别

    java 中newInstance()方法和new关键字的区别 * 它们的区别在于创建对象的方式不一样,前者是使用类加载机制,后者是创建一个新类. * 那么为什么会有两种创建对象方式?这主要考虑到软件的可伸缩.可扩展和可重用等软件设计思想. * 我们使用关键字new创建一个类的时候,这个类可以没有被加载.但是使用newInstance()方法的时候, * 就必须保证:1.这个类已经加载:2.这个类已经连接了. * newInstance()实际上是把new这个方式分解为两步,即首先调用Class

随机推荐