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

重庆网站关键词排名优化在川航网站购票后怎么做

重庆网站关键词排名优化,在川航网站购票后怎么做,青岛市建设工程质量安全监督站官方网站,成都网页设计制作参考笔记:java的final关键字-CSDN博客 目录 1.final关键字使用范围 2.final修饰类 3.final修饰方法 4.final修饰变量 5.final使用注意事项 6.练习题 6.1 题1 6.2 题2 1.final关键字使用范围 在Java中声明类、变量和方法时,可使用关键字 final 来…

参考笔记:java的final关键字-CSDN博客

目录

1.final关键字使用范围

2.final修饰类

3.final修饰方法

4.final修饰变量

5.final使用注意事项

6.练习题

6.1 题1

6.2 题2


1.final关键字使用范围

在Java中声明类、变量和方法时,可使用关键字 final 来修饰,表示“最后的,最终的

2.final修饰类

final 关键字修饰类,表示这个类不能被继承,没有子类。不希望别的类去修改或者重写它的方法,例如 String、StringBuffer

案例 

3.final修饰方法

final 关键字修饰方法,表示这个方法不能被子类重写,但可以被子类继承

 语法格式

[修饰符] final 返回值类型 方法名(参数列表){//程序代码
}

4.final修饰变量

final 关键字修饰的变量(成员变量或局部变量)称为常量,一旦赋值,它的值就不能被修改。常量名建议使用大写字母,例如:final double MY_PI = 3.14

语法格式

[修饰符] final type var = value; 
//type是Java数据类型,var是变量名,value是变量的值

特点 

成员变量用 final 修饰后,该变量不会有 set 方法,只有 get 方法

final 修饰的实例变量必须作初始化操作(可以显式赋值普通代码块赋值构造器中赋值),否则编译不通过

final 修饰的静态变量作初始化操作时,必须在声明时或静态代码块中显式初始化,不能使用构造器作初始化

原因:为什么不能用构造器赋值呢?在前面已经学过,使用 static 的变量在类加载的时候就会创建并且作初始化。但是若用 final 修饰 static 变量,那么此时该变量又必须作赋值操作。而构造器只有在 new 对象的时候才会调用,类加载又一定先于构造器执行,所以类加载时,构造器是来不及为 final static 变量作赋值操作的。所以这里报错的主要原因是:在构造器里为 final static 变量赋值时机可能会比较晚

5.final使用注意事项

使用 final 修饰类,只是表示该类不能被继承,类内部的属性和方法不会自动具有 final 修饰符

  final 类不能继承,但能正常实例化对象

  如果不是 final 类,但是有 final 方法,该方法不能被重写,但是可以被继承

public class demo {public static void main(String[] args) {Student student = new Student();student.run();}
}
class Person{public final void run(){System.out.println("running");}
}class Student extends Person{}
/*输出结果
running*/

④ final 不能修饰构造器

finalstatic 往往搭配使用,效率更高,因为底层编译器做了优化

        (1)调用 finalstatic 修饰的变量,不会导致类加载

        (2)调用单用 static 修饰的变量,会导致类加载

public class Test {public static void main(String[] args) {System.out.println(Person.num);//不会导致类加载,所以不执行静态代码块System.out.println(Cat.n);//导致类加载,执行静态代码块}
}
class Person{public final static int num = 20;static{System.out.println("Person static block");}
}class Cat{public static int n = 300;static{System.out.println("Cat static block");}
}
/*输出结果
20
300
Cat static block
*/

 包装类 Integer、Double、Float、Boolean 等都是 final

6.练习题

6.1 题1

排错

public class Something {public int addOne(final int x) {return ++x;//x是用final修饰的,不能修改,++x相当于x=x+1,所以报错,应该改为return x+1;}
}

 x 是用 final 修饰的,不能修改,++x 相当于 x = x + 1,所以报错,应该改为 return x + 1

6.2 题2

排错

class Something {public static void main(String[] args) {Other o = new Other();new Something().addOne(o);}public void addOne(final Other o) {o = new Other();//X,这行去掉就行了。o为final修饰的形参,为一个引用数据类型,所以需要保证其引用地址不变,其内部的i属性++不会有任何问题o.i++;}
}
class Other {public int i;
}

ofinal 修饰的形参,为一个引用数据类型,所以需要保证其引用地址不变,其内部的 i 属性 ++ 不会有任何问题

http://www.dtcms.com/wzjs/615612.html

相关文章:

  • 河南企业站seowordpress小工具放入用户中心
  • 网站建设玖金手指谷哥十2023新冠结束了吗
  • 广园路建设公司网站镇江市质监站网址
  • 网站建设预算计算方法建站素材网
  • 绿植行业做网站的wordpress get_post
  • 网站的打开速度人力资源服务外包
  • 响应式网站设计软件网页代码大全
  • 企业网站的管理系统网站开发及维护合同
  • 广州网站建设开发微信企业app下载安装
  • 做淘宝美工图片网站交通运输局网站建设方案
  • 上海微信小程序网站建设易讯网络网站建设
  • 做免费的视频网站可以赚钱吗免费的网站模版
  • 做系统去哪网站下载镜像域名申请而完成以后怎么做网站
  • 心理服务网站建设内容江门特色
  • apache添加多个网站长春网站设计平台
  • 华为云专业网站定制网站开发实训
  • 徐州网站免费的个人网站平台
  • 九江公司网站建设网站建设一条龙全包
  • 自己做的网站套dedecms教程广州游戏网站建设
  • dedecms网站tag标签静态化网站建设制作培训
  • 深圳网站制作公司兴田德润放心免费申请地图定位
  • 购物网站建设价格网站开发人员的工资
  • 自助网站上海做网站的公司是什么
  • 如何申请建设网站视频软件制作
  • 宁波网站优化价格wordpress中文对照
  • 企业网站开发费是固定资产吗时间轴网站代码
  • 同人那个小说网站做的最好交互式网站设计怎么做
  • 网站建设案例图片便民的网站app怎么做
  • 专业的网站开发公司如何做公司网站网页
  • 郑州企业网站推广外包微网站定制开发