面向小姐姐的编程——java面向对象之final、static关键字
文章目录
- final关键字
- final的概念
- final的作用
- 修饰类:
- 修饰变量:
- 总结
- 代码示例
- static关键字
- static的概念
- static的作用
- 调用方式
- static修饰成员变量
- 特点:
- 需求:定义研发部成员类,让每位成员进行自我介绍
- 分析:
- 注意事项
- 总结
- 代码
- static修饰
- 在这里插入图片描述
- static修饰成员方法
- 代码示例
- 1
- 2.
- 注
final关键字
final的概念
最终的、最后的
final的作用
用于修饰类、方法和变量
修饰类:
该类不能被继承String, System 修饰方法:
该方法不能被重写 不能与abstract共存
修饰变量:
最终变量,即常量,只能赋值一次 不建议修饰引用类型数据,因为仍然可以通过引用修改对象的内部数据,意义不大
总结
final关键字:
- final这个单词是"最终"的意思, 在Java中是一个关键字, 可以用来修饰类, 成员变量, 成员方法.
- 修饰的类: 不能被继承, 但是可以继承其他的类.
- 修饰的方法: 不能被重写.
- 修饰的变量: 是一个常量, 值只能设置一次.
代码示例
static关键字
static的概念
静态的,静态变量被该类下所有的对象所共享.
static的作用
用于修饰类的成员 : 成员变量:类变量 成员方法:类方法
调用方式
类名. 成员变量名; 类名. 成员方法名(参数);
static修饰成员变量
特点:
被本类所有对象共享
需求:定义研发部成员类,让每位成员进行自我介绍
分析:
A:研发部成员统称为开发者,定义类Developer。
B:每位开发者所属部门相同,所以属性departName用static修饰: public static String departName = “研发部”; C:Developer类的普通属性和行为: name, work; selefIntroduce();
D:在测试类中创建对象并使用 E : 修改部门名称为“开发部”,测试效果
注意事项
随意修改静态变量的值是有风险的,为了降低风险,可以同时用final关键字修饰,即公有静态常量(注意命名的变 化):
public final static String DEPART_NAME = "研发部";
总结
该单词是"静态"的意思, 可以用来修饰成员变量和成员方法.
关于static修饰的成员变量:
该变量叫静态变量(类变量), 静态变量被该类下所有的对象所共享.
静态成员的调用方式:
可以通过 类名. 的形式直接调用.
需求: 定义研发部成员类,让每位成员进行自我介绍
Developer类:
成员变量: 姓名name, 工作内容work, 部门名字departmentName
成员方法: 进行自我介绍的方法selfIntroduction();
代码
static修饰
public static final可以让访问变得很方便,而且不会被修改
static修饰成员方法
静态方法:
静态方法中没有对象this,所以不能访问非静态成员
静态方法的使用场景
只需要访问静态成员 不需要访问对象状态,所需参数都由参数列表显示提供
代码示例
需求:定义静态方法,反转数组中的元素
分析:
A:先明确定义方法的三要素: 方法名:reverse(反转) 参数列表:int[] arr 返回值类型:void
B:遍历数组, 交换数组索引为i和length-1-i的元素: arr[i] <=> arr[arr.length -1 - i]
C:当索引 i >= (length – 1 – i) 时,停止交换元素
D:在测试类中创建对象并使用
1
静态方法中没有对象this,所以不能访问非静态成员
所以要想打印a肯定报错的
2.
注
根据B站Java入门/黑马Java零基础Java在线教程最新Java编程而写,并有所改编,如有侵犯请联系。
一直在做比赛(用的python),java就没怎么学,但专业课是java,python不考啊啊啊啊啊
罢了,会一门语言再学其他的就简单多了,方法之前的比较简单,就不写了,为了不挂科,后面的内容肯定会慢慢补充的。
当然还有老师布置的一些题目(在我看来比较难!!!)与大家一起分享,共同进步。
欢迎大家关注点赞!!!
面向小姐姐的编程——java面向对象之final、static关键字相关推荐
- 面向小姐姐的编程——JAVA面向对象之封装(一)
文章目录 面向对象思想概述 什么是面向对象? 类与对象 现实中如何描述一个事物? Java中如何描述一个事物? 类的概念: 抽象 什么是对象? 类和对象的关系 类的定义和使用 创建一个对象并使用 创建 ...
- 面向小姐姐的编程——JAVA面向对象之继承(三)
文章目录 方法重写(Override) 定义: 解释: 注意事项: 使用场景: 例题 Java中的访问权限修饰符 案例:Java中四种访问权限演示 需求: 分析: 代码 总结 方法重写和方法重载的区别 ...
- 面向小姐姐的编程——JAVA面向对象之继承(二)
文章目录 继承关系中子父类成员方法的使用 需求: 分析: 总结 继承关系中子父类构造方法的使用 需求: 分析: 含参构造与非含参构造 结论: 注 继承关系中子父类成员方法的使用 需求: 子父类中定义了 ...
- 面向小姐姐的编程——JAVA面向对象之继承(一)
文章目录 继承概述 继承的概念 Java中的继承 格式(extends) 子类继承父类之后有什么效果? 注 继承的使用场景 向上抽取: 向下扩展: 继承的优缺点 程序设计的追求 耦合 内聚 继承关系中 ...
- 面向小姐姐的编程——JAVA面向对象之多态
多态概述 什么是多态? 多种状态,同一对象在不同情况下表现出不同的状态或行为 比如你女朋友,会有多种表情,多种姿态,多种情绪,这都是多态. Java中实现多态的步骤 要有继承(或实现)关系 要有方法重 ...
- 面向小姐姐的编程——JAVA面向对象之封装(二)
文章目录 封装概述 什么是封装 封装的好处 Java中哪些内容体现了封装? Java中的封装体 private关键字 private的基本概念 特点 用法 扩展 this 关键字 this 的基本概念 ...
- 面向小姐姐的编程——java面相对象之抽象
抽象类概述 抽象类的由来 父类默认的eat方法已过时,所有子类都需要重写,所以将父类eat的方法体没有意义: 但是每个动物都必须拥有eat功能,所以将父类eat定义成抽象方法. 抽象类的概念 包含抽象 ...
- Java学习(静态static关键字,数组工具类Arrays,数学相关工具类(绝对值,向上取整,向下取整),继承,super和this关键字,抽象)
2022/1/2 (1/6)Java学习 1.静态Static关键字概述 一旦用了static关键字,那么这样的内容不再属于对象自己,而是属于类的,所以凡是本类的对象,都共享同一份. 2.静态stat ...
- Java讲课笔记12:static关键字
文章目录 零.本讲学习目标 1.掌握静态变量的使用 2.掌握静态方法的使用 3.掌握静态代码块的使用 一.static关键字的用处 二.静态变量 1.静态变量的定义 2.静态变量的内存分配示意图 3. ...
最新文章
- centos6.5官方dvd做本地yum
- linux 更改wp版本号,代码实现移除 WordPress 版本号
- linux c之用fputc和fgetc复制文件并且打印在终端
- 服务器本地文件,云服务器 本地文件
- junit单体测试(PowerMockito)一
- 基于51单片机LCD1602电子时钟实物制作
- php默认站点,PHP学习之Apache修改默认站点的目录
- 未来计算机对世界的改变,到2030年,世界将会发生的10个改变,科学家:科技决定未来!...
- 自己在总结前人经验下弄的几个opencv封装函数
- server2003 sp1预览与演示
- javascript中的array对象属性及方法
- 经典OA办公协同管理-原型UI设计-制作
- 电大考的是职称英语同计算机,最新电大统考计算机应用基础真题选择题详细分析小抄.doc...
- 用matlab画声偶级辐射,matlab结题报告(电偶极子的辐射场)
- ORACLE常用函数汇总
- PASCAL VOC 2012
- fanuc换刀宏程序详解_FANUC宏程序使用举例
- 日常生活记账,如何将所有账目打印
- 木瓜移动每日快讯0511:谷歌Chrome引入新隐私功能fenced frame
- 我认识的文华财经指标期货高手一年时间从2万到30万的实际经历
热门文章
- python第七章动手试一试_《Python从入门到实践》第八章动手试一试
- html button 自动提交,html+js表单form验证自动提交的2种提交方式button和
- 数字图像处理与机器视觉光盘资料_机器视觉——数字图像处理知识点总结
- linux github代码仓库,centos7上使用git命令把代码放到github上
- netbeans php 安装教程,php_xdebug安装+NetBeans的配置和使用
- Win10 取消桌面快捷键图标
- 打包HTML文件基础之webpack配置
- Cocos2d-x中使用第三方so库
- bootstrap基础学习【菜单、按钮、导航】(四)
- warning C4996: 'fopen': This function or variable may be unsafe.(_CRT_SECURE_NO_WARNINGS)