当前位置: 首页 > news >正文

做打鱼网站犯法不/专门做网站的公司

做打鱼网站犯法不,专门做网站的公司,南京h5网站开发,如何建设自己的网站来获取流量一、final关键字的基本用法 1、修饰类 当用final修饰一个类时,表明这个类不能被继承。注意: final类中的成员变量可以根据需要设为final, final类中的所有成员方法都会被隐式地指定为final方法。 2、修饰方法 下面这段话摘自《Java编程思想》…

一、final关键字的基本用法

1、修饰类

   当用final修饰一个类时,表明这个类不能被继承。注意: final类中的成员变量可以根据需要设为final, final类中的所有成员方法都会被隐式地指定为final方法

 

2、修饰方法

     下面这段话摘自《Java编程思想》第四版第143页:“使用final方法的原因有两个。第一个原因是把方法锁定,以防任何继承类修改它的含义;第二个原因是效率。在早期的Java实现版本中,会将final方法转为内嵌调用。但是如果方法过于庞大,可能看不到内嵌调用带来的任何性能提升。在最近的Java版本中,不需要使用final方法进行这些优化了。“

  想明确禁止该方法在子类中被覆盖的情况下才将方法设置为final的,即父类的final方法是不能被子类所覆盖的。

       final修饰的方法表示此方法已经是“最后的、最终的”含义,亦即此方法不能被重写(可以重载多个final修饰的方法)。

      (注:类的private方法会隐式地被指定为final方法。)

3、修饰变量 

      final成员变量表示常量,只能被赋值一次,赋值后值不再改变。当final修饰一个基本数据类型时,表示该基本数据类型的值一旦在初始化后便不能发生变化;

      如果final修饰一个引用类型时,则在对其初始化之后便不能再让其指向其他对象了,但该引用所指向的对象的内容是可以发生变化的。

       本质上是一回事,因为引用的值是一个地址,final要求值,即地址的值不发生变化。

  final修饰一个成员变量(属性),必须要显示初始化。这里有两种初始化方式,一种是在变量声明的时候初始化;第二种方法是在声明变量的时候不赋初值,但是要在这个变量所在的类的所有的构造函数中对这个变量赋初值。

  当函数的参数类型声明为final时,说明该参数是只读型的。即你可以读取使用该参数,但是无法改变该参数的值。

 

二、深入理解final关键字

1、类的final变量和普通变量有什么区别?

     当用final作用于类的成员变量时,成员变量(注意是类的成员变量,局部变量只需要保证在使用之前被初始化赋值即可)必须在定义时或者构造器中进行初始化赋值,而且final变量一旦被初始化赋值之后,就不能再被赋值了。

     那么final变量和普通变量到底有何区别呢?下面请看一个例子:

复制代码
public class Test { public static void main(String[] args)  { String a = "hello2";   final String b = "hello"; String d = "hello"; String c = b + 2;   String e = d + 2; System.out.println((a == c)); System.out.println((a == e)); } 
} 
复制代码

输出结果:true、false
        大家可以先想一下这道题的输出结果。为什么第一个比较结果为true,而第二个比较结果为fasle。这里面就是final变量和普通变量的区别了,当final变量是基本数据类型以及String类型时,如果在编译期间能知道它的确切值,则编译器会把它当做编译期常量使用。也就是说在用到该final变量的地方,相当于直接访问的这个常量,不需要在运行时确定。

  不过要注意,只有在编译期间能确切知道final变量值的情况下,编译器才会进行这样的优化,比如下面的这段代码就不会进行优化:

复制代码
public class Test { public static void main(String[] args)  { String a = "hello2";   final String b = getHello(); String c = b + 2;   System.out.println((a == c)); } public static String getHello() { return "hello"; } 
} 
复制代码

这段代码的输出结果为false。这里要注意一点就是:不要以为某些数据是final就可以在编译期知道其值,通过变量b我们就知道了,在这里是使用getHello()方法对其进行初始化,他要在运行期才能知道其值。

和上上面的例子不一样,不需要在运行期才知道值。

 

2、被final修饰的引用变量指向的对象内容可变吗?

    变量被final修饰之后,虽然不能再指向其他对象,但是它指向的对象的内容是可变的。

3、final参数的问题

     在实际应用中,我们除了可以用final修饰成员变量、成员方法、类,还可以修饰参数、若某个参数被final修饰了,则代表了该参数是不可改变的。

     

 

转载于:https://www.cnblogs.com/651434092qq/p/11492619.html

http://www.lbrq.cn/news/1577953.html

相关文章:

  • 厦门网站开发网站建设网站/网络平台宣传方式有哪些
  • 新开传奇网站合击/甲马营seo网站优化的
  • 装修上什么网站比较好/推广引流网站
  • 佛山做企业网站公司/如何注册网站
  • web怎样插入自己做的网站/搭建网站工具
  • 一站式做网站服务/广西南宁做网站的公司
  • 嘉兴做网站美工的工作/百度手游排行榜
  • WordPress知更鸟主题怎样安装/北京搜索引擎优化主管
  • php网站开发薪资/今日国内新闻大事件
  • 杭州网站建设图片/seoer是什么意思
  • 电商网站开发哪里好/常用的网络营销方式
  • 做质粒图谱的网站/如何做市场调研和分析
  • 上海搬家公司电话附近/免费seo排名优化
  • 个人网页设计与实现的题目来源/厦门seo计费
  • 公司网站域名cn和com/百度论坛首页
  • 手机app网站建设/成都百度推广公司联系电话
  • 怎么做导航网站/舆情网站直接打开的软件
  • 主播做的头像在哪个网站上做的/品牌网站设计
  • 做相册集什么网站/中国关键词
  • 上海外贸营销网站建设网站/百度信息
  • 用qt做网站可以吗/推广网站有效的方法
  • 电商网站开发设计/什么是竞价推广
  • 河北网站制作公司电话/企业管理软件
  • 购物网站开发背景需求/网络营销的内涵
  • 在工商局网站做年报要交费吗/百度广告上的商家可靠吗
  • wordpress分类自定义文字/济南seo网站排名优化工具
  • mini主机做网站服务器/网络推广外包注意哪些
  • 东莞微信网站建设报价/免费自己制作网站
  • 巨野做网站的/优化推广网站排名
  • 安徽做网站电话/湖南企业竞价优化首选
  • Wireshark专家模式定位网络故障:14种TCP异常深度解剖
  • 链动 3+1 模式:重构商业增长逻辑的新引擎
  • Linux中配置DNS
  • python面向对象设计模式
  • 从 GPT-2 到 gpt-oss:架构进步分析
  • Nmap 渗透测试弹药库:精准扫描与隐蔽渗透技术手册