精华内容
下载资源
问答
  • 1. 修饰基础数据成员final 这是final主要用途,其含义相当于C/C++const,即该成员被修饰为常量,意味着不可修改。如java.lang.Math类中PI和E 是 final成员,其值为3.141592653589793和2....

    1,修饰基础数据成员的final

    这是final的主要用途,其含义相当于C/C++的const,即该成员被修饰为常量,意味着不可修改。如java.lang.Math类中的PI和E是 final成员,其值为3.141592653589793和2.718281828459045。

    2, 修饰类或对象的引用的final

    在Java中,我们无法让对象被修饰为final,而只能修饰对象的引用,这意味着即使你写public final A a = new A(); 事实上a指向的对象的数据依然可以被修改,不能修改的是a本身的引用值,即你不能再对a进行重赋值。同样的情况出现在数组中,比如public final int[] a = {1, 2, 3, 4, 5},事实上a中的数值是可修改的,即可以写a[0] = 3。据目前了解,java中数组内的数据是无法修饰为不可修改的,而C/C++可以。

    3,修饰方法的final

    修饰方法的final和C/C++中修饰成员对象的const大不相同。首先,修饰方法的final含义不是“不可修改”,而是指该方法不可被继承成员重新定义。(注意,这里所说的不能被重新定义,并不是指子类一定不能定义同名方法,如果父类的方法是私有类型,子类是允许定义该方法的,这里指的不能重新定义是指不能通过改写方法来使得方法重写的多态性得以实现,如不希望A a = new B(); a.f();这样的重写方法情况出现)

    示例:

    public class A {

        // final方法f

        public final void f() {

           System.out.println("类A中的final方法f被调用了");

        }

    }

    public class B extends A {

        // 编译错误!父类的f方法是final类型,不可重写!

        //! public void f() {

        //!     System.out.println("类B中的方法f被调用了");

        //! }

    }

    此外,当一个方法被修饰为final方法时,意味着编译器可能将该方法用内联(inline)方式载入,所谓内联方式,是指编译器不用像平常调用函数那样的方式来调用方法,而是直接将方法内的代码通过一定的修改后copy到原代码中(将方法主体直接插入到调用处,而不是进行方法调用)。这样可以让代码执行的更快(因为省略了调用函数的开销),比如在int[] arr = new int[3]调用arr.length()等。

    另一方面,私有方法也被编译器隐式修饰为final,这意味着private final void f()和private void f()并无区别。

    4,修饰类的final

    当一个类被修饰为final时,它的含义很明确,就是不允许该类被继承,也就是说,该类“绝后”了,任何继承它的操作都会以编译错误告终。这也凸显出Java用final而不用const作为标识符的理由。(成员变量可以不是final,成员方法直接是final的)

           示例:

           public final class A {

    }

    // 编译错误!A是final类型,不可被继承!

    //!public class B extends A{

    //!}

    5,修饰参数fina

    对对象参数做final修饰。因为对象变量传递的是其引用,为防止调用过程中无意的更改而修饰。

    展开全文
  • 网络命令的关键用法

    2013-04-25 23:28:52
    网络命令使用能够使网络管理得到充分地发挥,网络命令的关键用法主要介绍了常用基本命令,对于初学者是不可或缺宝贵资源,通过关键用法的练习能够对网络管理有个初步认识与掌握
  • 主要介绍了Python编程中time模块一些关键用法解析,像mktime和localtime以及gmtime这些常用方法都有讲到,需要朋友可以参考下
  • Css3中关键帧keyframes的用法 *(作者:李梅思,撰写时间:2019年1月16日)* 在css3中可以使用关键帧keyframes来设置动画, 这个动画你可以根据自己的需要来设置,例如颜色的渐变、位移、缩放、扭曲...

    Css3中关键帧keyframes的用法

    在css3中可以使用关键帧keyframes来设置动画,
    这个动画你可以根据自己的需要来设置,例如颜色的渐变、位移、缩放、扭曲等等。
    下面我为大家准备了用关键帧设置的颜色渐变效果

    <!doctype html>
    <html>
    <head>
    <meta charset="utf-8">
    <title>Css3中关键帧keyframes的用法</title>
    </head>
    <style>
    	.box{
    		width: 200px;
    		height:200px;
    		margin: 200px auto;
    		animation: move 3s linear infinite;
    	}
    	@keyframes move{
    		0%{
    			background: #3B90C5;
    		}
    		25%{
    			background:#DF7137;
    		}
    		50%{
    			background:#74DDE9;
    		}
    		75%{
    			background:#DF7137;
    		}
    		100%{
    			background: #3B90C5;
    		}
    	}
    </style>
    <body>
    	<div class="box"></div>
    </body>
    </html>
    

    注意:设置好动画之后,记得要调用函数,不调用函数的话,动画就不起效果。

    Animation常用于调用函数:animation: move 3s linear infinite;
    move是动画的名称,3s是动画播放的时间,linear(匀速)是动画播放方式,infinite(循环播放)是动画播放次数
    大家可以尝试一下其他的动画效果,你会发现好玩之处。

    展开全文
  • C语言关键字的用法

    2012-05-25 11:00:22
    C语言中有32个关键字其中关于static与extern关键的用法详细介绍
  • typename的用法

    2018-07-13 08:56:20
    在C++中typename一般用来声明模板的模板参数(template ...但是还有一个关键的用法。首先是两个概念: 2.1 qualified name 例如:std::cout, std::endl;这样含有作用域符号(::)的就是限定名, 当我们用using声...

    在C++中typename一般用来声明模板的模板参数(template parameter):

    template<typename T> class X;   //T是一个模板参数

    但是还有一个关键的用法。首先是两个概念:

    qualified name

    例如:std::cout, std::endl;这样含有作用域符号(::)的就是限定名,
       当我们用using声明将cout,endl引入到当前作用域之后就可以直接使用
       这两个名称,这个时候cout,endl就不是限定名了。
    

    dependent name

       dependent name是依赖于模板参数的类型,例如:
    
    template <typename T> class X 
    {
        int i;
        std::vector<int> ivec;
        std::vector<int>::iterator iter;
    
        T type;
        std::vector<T> tvec;
        std::vector<T>::iterator titer;
    };

    前3个成员变量是不依赖于模板参数,所以是non-dependent name,后3个是dependent name ,直到实例化该模板的时候才会知道到底是什么类型。 下面来讨论typename的第二种用法。现在假设我们有一个类如下:

       template <typename T> class Y
       {
           T::iterator *iter;
           ...
       };

    我们可能本意是想定义一个迭代器对象,例如我们如果用vector来实例化这个模板,那么iter 则应该是一个迭代器指针,但是,如果我们用下面这个类来实例化这个模板:

     class cType
       {
           static int iterator;
           ...
       };

    那么T::iterator *iter会被编译器解释为两个数相乘。事实上,C++编译器会采用第二种解释方法 ,即使iterator的确是一个类型名。 为了避免这种矛盾,当我们适用qualified dependent name的时候,需要用typename来指出这是一个
    类型名.即:

    template <typename T> class Y
    {
       typename T::iterator *iter;
       typedef typename T::iterator iterator; //定义了Y::iterator类型名称
       ...
    };
    //typename 指出下面紧跟着的名称是一个类型

    文章来源

    .

    展开全文
  • twisted中defer的关键用法

    千次阅读 2015-08-06 08:55:45
    1.deferred是通过调用callback或则errback来启动(需要传入参数),如果errback传入是字符串,则默认转换为twisted.python.failure.DefaultException。 2.defered仅仅只能调用一次,多次调用会触发...

    1.deferred是通过调用callback或则errback来启动(需要传入参数),如果errback传入的是字符串,则默认转换为twisted.python.failure.DefaultException。

    2.defered仅仅只能调用一次,多次调用会触发AlreadyCalledError的异常,这帮助阻止了一个事件被多次处理的情况。

    3.在第N层的callback和errback由第N+1层的errback和errback链处理,如果第N层抛出异常(raise Exception)或则返回一个Failure,则由第N+1的errback处理,如果N+1已经终止,则程序会停止执行,会抛出一个Unhandled Error异常。如果没有Failure返回或则没有抛出异常,则继续由N+1的callback进行处理。依赖于回调的返回结果,执行流程将会在errback和callback之间来回交叉执行。

    4.通过deferred回调链返回的结果会作为参数传递给下一个回调层。

    5.每次增加一个回调,都会增加一个回调层。例如

      addCallback(),增加一个正确回调,和一个默认的失败回调

      addErrback(),增加一个错误回调,和一个默认的成功回调

      addBoth(),同时增加相同的错误回调和正确回调。

     

    展开全文
  • CAKeyframeAnimation 关键帧动画的用法

    万次阅读 2013-06-07 15:53:06
    之所以叫做关键帧动画是因为,这个类可以实现,某一属性按照一串数值进行动画,就好像制作动画时候一帧一帧制作一样。 一般使用时候 首先通过 animationWithKeyPath 方法 创建一个CAKeyframeAnimation...
  • 该文档是2018年python 23段代码掌握Pandas关键用法,非常适合大家掌握pandas库学习。
  • 1 点击某个Cell调用方法如下: 2 FR:徐海涛(Hunk Xu) QQ技术群:386476712
  • c++中map数据结构为红黑树(平衡二叉树一种特化),搜索复杂度为O(logN),其他操作不在此叙述,读者可以自行在MSDN上查找详细字段和函数含义及用法示例。 1.2.数据结构 每个节点数据构成如下, x64环境...
  • 没有话,就先安装: yum install -y screen 使用场景: 1.个人终端断网不会导致程序终止,(比如有时备份时候,可能会断网,导致备份不成功) 先开启screen 命令,然后执行命令 screen screen -ls 查看...
  • Dev-GridLookUpEdit 的用法 动态配置列 为查询关键 字段
  • java关键子及其用法

    2008-09-06 11:25:43
    java关键字的用法 java关键字的解释与用法解释
  • <form:form modelAttribute="user" action="save" method="post" >//以form:开头,后面接表单类型.modelAttribute类型对接模型用户名:<form:input path="username"></form:input><br>...
  • iOS OC -date日期一些关键用法

    千次阅读 2015-07-23 19:58:14
    NSDate 是一个日期类 创建一个date *date 获取时间无论是在哪个时区,都是打印相对应零时区时间 NSDate *date =[NSDate date ]; NSLog(@"%@", date); // 结果:2015-07-23 16:04:00.431 OC07_NSDate...
  • default关键的用法,msdn上的解释如下: default 关键字可在 switch 语句或泛型代码中使用。 switch 语句:指定默认标签。 泛型代码:指定类型参数的默认值。这对于引用类型为空,对于值类型为零 第一种用法是...
  • accident的用法与incident 的用法有何不同?这不刚开学,就有同学问我这个问题。实际上,这个问题很简单,关键就是这位同学们没有把握好要点。好了,我们转入正题吧,来看accident的用法与incident 的用法的不同吧。...
  • typename在C++中的用法

    2017-01-03 18:49:22
    typename在C++中的用法 ...1. //在C++中typename一般用来声明模板的模板参数(template parameter): ...2. /*但是还有一个关键的用法。首先是两个概念:  1). qualified name  例如:std:
  • Matlab中fft函数的用法关键问题详解

    万次阅读 多人点赞 2015-08-30 22:29:49
    FFT是Fast Fourier Transform(快速傅里叶变换)简称,这种算法可以减少计算DFT(离散傅里叶变换,关于此更详细说明见后文)时间,大大提高了运算效率,并曾经一度被认为是信号分析技术划时代进步,其重要性...
  • 关键词汇理解与用法

    2019-10-02 08:35:16
    1.性能提升之AsNoTrackin return View(await books.AsNoTracking()....所以,我们在做数据集合查询显示,而又不需要对集合修改并更新到数据库时候,一定不要忘记加上AsNoTracking。 如果查询过程做了se...
  • CAKeyframeAnimation 关键帧动画的用法 一、原理 之所以叫做关键帧动画是因为,这个类可以实现,某一属性按照一串的数值进行动画,就好像制作动画的时候一帧一帧的制作一样。 一般使用的时候 首先通过 ...
  • static的用法

    2018-10-22 14:43:08
    static是java中非常重要的一个关键字,而且它的用法也很丰富,主要有四种用法: 用来修饰成员变量,将其变为类的成员,从而实现所有对象对于该成员的共享; 用来修饰成员方法,将其变为类方法,可以直接使用“类名...
  • 那么首先被大家选择编程软件就是python,也用在各行各业之中,并被大家所熟知,所以也有越来越多python学习者关注python问题,今天环球网校小编就来和大家讲讲Python多态及用法详解。在面向对象程序设计中,...
  • TimeSpan的用法

    千次阅读 2019-01-20 22:35:17
    TimeSpan的用法 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~...开发工具与关键技术:TimeSpan的用法 作者:江羿宽 撰写时间:2019.01.20 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~...
  • PROCEDURE 中有个入参FLAG ,数值为: ...就是直接写sql,想问问 能否把入参FLAG:=“1,2,3”; 转换成 select * from dual where x.dd in(1,2,3);语句执行。 不知道说明白没有。 不准备使用SQL拼接。

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 4,443
精华内容 1,777
关键字:

关键的用法