final

  • final关键字可以用来修饰属性、方法、类
  1. 用finalal修饰的变量必须直接赋值,且不能修改。也就是常量。所依,finall往往与static一起出现,所有对象共用一份,节省存储空间。

     public final static  int NUM = 10;//所有对象共享一份
  2. final修饰的类不能被其他类继承,不能被定义为抽象类。(抽象类必须要靠子类实现)。

  3. final修饰的方法不能被重写。

  4. final修饰的方法其参数在每一次传参后其值不能被改变。

    public static void testFinal(final  int a){a=10; // 该操作是无效的,每一次传参后其值不能被改变相当于a在该方法中是常量。}

抽象类

  • 如果一个类没有足够的信息去描述一个具体的对象,那么这个类是抽象类。
  • 抽象类不能直接实例化对象。但其他功能依然存在(成员变量、成员方法、构造方法),让子类去实现。
  • 如果一个类继承了抽象类,要么重写该抽象类中所有的抽象方法;要么将该类定义为抽象类(用abstract修饰)。
  • 抽象类里可能有未实现的抽象方法,如果一个类有抽象方法,这个类一定是抽象类。
  • 构造方法和静态方法不可以用abstract修饰。
    原因:1.构造方法如果被abstract修饰,则它就方法体,不能创建对象。
    2.静态方法如果被abstract修饰,则它本就可以直接用类名调用,绕过对象(继承实现该抽象方法的对象),抽象方法不能直接调用。

javaSE探赜索隐之四<final与抽象类>相关推荐

  1. javaSE探赜索隐之四--包

    包 包的作用 避免类名重复. 全类名 = 包名 + 类名 只要在不同的包中,即使类名相同,我们也可以精确访问. 我们可以用import关键字+全类名,来导入外部包的类. 如果类名相同,则默认使用imp ...

  2. JavaSE自学笔记013_Real(抽象类、接口、两种设计模式)

    JavaSE自学笔记013_Real(抽象类.接口) 一.基本概述 (一)抽象类(关键字:abstract) //抽象方法 public abstract class Animal{abstract ...

  3. Day11(重写,多态,final,抽象类)

    一.重写 1. 方法重写的注意事项: 1.父类中私有的方法不能被重写 2.子类重写父类方法的时候,访问权限不能更低 要么子类重写的方法访问权限比父类的访问权限要高或者一样 建议:以后子类重写父类方法的 ...

  4. 类变量类方法,main方法,代码块,单例设计模式,final,抽象类

    一.类变量和类方法 1.类变量 也叫静态变量/静态属性,是该类的所有对象共享的变量,任何一个该类的对象去访问它时,取到的都是相同的值,同样任何一个该类的对象去修改它时,修改的也是同一个变量. 1).定 ...

  5. java 抽象类_什么是final?Java抽象类又是什么?抽象类能使用 final 修饰吗?

    第十三题 讲解人:张小龙     8.23 邮箱:2304940425@qq.com 一.什么是final? final是java中的一个关键字,可以用来修饰变量.方法和类.用关键词final修饰的域 ...

  6. 9、包、访问控制、import、static、static代码块、final、抽象类、接口、instanceof、多态...

    1.包 三级命名:公司的尾缀(com).公司名字(baidu).业务(Sale) java.lang:默认包:String.Math,Object,System java.util:工具包 java. ...

  7. JavaSE探赜索隐三<接口>

    接口 从本质上讲接口是一种特殊的抽象类.不过用 interface关键字罢了,而抽象类关键字是abstract class. java中一个类可以实现多个接口,解决了Java类单继承问题.(一个类只能 ...

  8. javaSE探赜索隐六(常用类API)

    常用类(API) 概述 java API 就是java应用程序编程接口.在我们程序员看来,API就是对java中预定义的类或者接口中的.属性.方法的功能进行说明的文档. Object Object类是 ...

  9. -1-2 java 面向对象基本概念 封装继承多态 变量 this super static 静态变量 匿名对象 值传递 初始化过程 代码块 final关键字 抽象类 接口

    java是纯粹的面向对象的语言 也就是万事万物皆是对象 程序是对象的集合,他们通过发送消息来相互通信 每个对象都有自己的由其他的对象所构建的存储,也就是对象可以包含对象 每个对象都有它的类型  也就是 ...

最新文章

  1. python将变量a全部变成大写字母_每天一个Python知识点:只用一招就将所有的英文单词首字母变成大写...
  2. DPDK架构与特点(转)
  3. 【机器学习入门笔记2:OpenCV图片读取和展示】20190203
  4. go语言游戏编程-Ebiten实现画面的填充
  5. 解决服务器上 w3wp.exe 和 sqlservr.exe 的内存占用率居高不下的方案
  6. Orchard CMS前台页面为什么没有Edit链接?
  7. 浅谈SAP Cloud for Sales 自动化
  8. 【Linux】- 守护进程的启动方法
  9. sql优化——模糊查询
  10. java 蓝桥杯算法提高 身份证号码升级(题解)
  11. Windows上配置iPhone开发环境
  12. linux应用对I2C设备驱动4种读写方法
  13. nohub java -jar xx.jar /dev/null 21
  14. 算法:单词匹配290. Word Pattern
  15. RHCS 测试过程(含GFS2),未完待续!
  16. 在Linux下安装GmSSL
  17. UE4 粒子特效基础学习 (01-将粒子效果挂载到角色身上)
  18. 求解带时间窗的车辆路径问题(matlab实现)
  19. python模块xlutils如何下载_Python-如何安装xlutils?
  20. Hibernate报错org.hibernate.MappingException: Unknown entity解决方法

热门文章

  1. C# 处理PPT水印(二)——去除水印效果(文本水印、图片水印)
  2. vue 拖拽功能样式优化
  3. 科学的研究方法——笛卡尔
  4. 西门子S7-1200PLC远程调试方法
  5. web安全之文件上传漏洞总结
  6. L1-030——一帮一学习小组”是中小学中常见的学习组织方式,老师把学习成绩靠前的学生跟学习成绩靠后的学生排在一组。
  7. 台式计算机打印机共享,电脑不能共享打印机怎么办 电脑设置共享打印机详细教程...
  8. Outlook 2016 pst/ost邮件数据文件迁移实现
  9. 正则表达式语法简介说明
  10. 知识图谱发展历程简介