IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 移动开发 -> 碾碎java系列-对象与类 -> 正文阅读

[移动开发]碾碎java系列-对象与类

声明:全文总结均以一个Android开发的角度叙述,如有遗漏且Android开发涉及到的知识点,请添加 vx: YY20203_24 来者备注Android验证通过,感谢您的阅读与指导

类之间的关系与类图

状态:特定实例域值的集合

依赖:依赖就是一个类A使用到了另一个类B,而这种使用关系是具有偶然性的、临时性的、非常弱的,但是类B的变化会影响到类A。比如某人要过河,需要借用一条船,此时人与船之间的关系就是依赖。表现在代码层面,为类B作为参数被类A在某个method方法中使用。

聚合:整体与部分的关系,此时整体与部分之间是可分离的

继承:一般到特殊,比较好理解

?

类图相关UML符号,需要了解,便于理解类图,也便于考试(软考)

组合的菱形为实心,整体和部分不可分离

预定义类(系统类)

对象变量并没有包含对象,仅仅是对象的引用,new操作符返回值也是引用,对象变量的值是对储存在另一个地方的一个对象的引用

Date和Calendar一些方法的使用,比如或者年月日,应避免使用过时方法,使用最新方法

访问器方法和更改器方法:仅得到对象状态的方法和改变对象状态的方法

用户自定义类

使用public标记实例域一般不支持,Android开发过程中,我们会对接口返回的数据进行实例化,此时的实例域我这以前使用过public进行标记,因为对于这些实例,我们一般只会直接使用对应的值,并不会对其修改,但现在公司对于这种实例仍采取get、set处理,不破坏类的封装性。孰优孰劣?欢迎留言讨论

不要编写返回引用可变对象的访问器方法,此处比较有意思

不可变对象(Immutable Object):对象一旦被创建后,对象所有的状态及属性在其生命周期内不会发生任何变化。

可变对象即会发生改变,看如下实例

?

解决方案

?

综上:我们写访问器方法时需要注意,平时使用较多的基本数据类型、String均为不可变对象

基本类型域设置为final,必须初始化,且不可修改;类设置为final,即不可变类,例如String类

静态域(static)属于类,不属于对象,与对象个数无关

静态方法的使用:访问静态域或不需要访问对象状态 常见用途:工厂模式产生不同风格的格式对象

方法参数

java程序总是采用按值调用,方法得到的是所有参数值的一个拷贝,方法不能修改传递给它的任何参数变量的内容

java对象调用并非是引用调用,如下例

?

对象构造

域初值会自动初始化默认值,但请初始化,避免不必要的错误

无任何访问修饰符,即默认访问范围为同一个包

类设计技巧

  1. 数据私有
  2. 数据初始化,勿依赖默认值,避免不必要的错误
  3. 不要使用过多的基本数据类型,多个相关的基本数据类型可用类代替
  4. 职责过多的类进行分解

  移动开发 最新文章
Vue3装载axios和element-ui
android adb cmd
【xcode】Xcode常用快捷键与技巧
Android开发中的线程池使用
Java 和 Android 的 Base64
Android 测试文字编码格式
微信小程序支付
安卓权限记录
知乎之自动养号
【Android Jetpack】DataStore
上一篇文章      下一篇文章      查看所有文章
加:2021-09-10 10:58:28  更:2021-09-10 11:00:17 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 16:31:13-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码