ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

2021-01-19

2021-01-19 21:32:05  阅读:200  来源: 互联网

标签:01 内部 19 创建 创建对象 对象 匿名 2021 方法


学习目标:

小白起飞第14天

学习内容:

局部内部类
局部内部类等同于局部变量

注意 : 局部内部类 在访问外部方法中的局部变量的时候可以加也可以不加final修饰,但是在内部类中,不加final修饰的也不可以更改值

局部内部类中,不能有静态声明,如果是成员方法中的局部内部类,可以访问外部类中所有的属性,如果是静态方法中局部内部类, 不可以直接访问外部类的成员属性,需要创建对象

匿名内部类
匿名内部类指的是在方法调用时,实参需要传入某个接口对象,不传入对象,传入一个匿名的实现类
如果方法定义形成 一般是个接口,那么调用的时候,就需要传入其实现类的对象
但是可以不实现这个接口,不传递实现类对象,传递一个匿名内部类,这个类,没有名字,不能复用
默认的匿名内部类类名 : 外部类类名$1 一次类推
没有名字的类,无法创建对象,但是传入匿名内部类的时候回自动创建一个对象

设计模式
是一些有经验的工程师,通过开发总结出来的一些经验和错误,形成的一种不是方法的方法。是经过长时间的摸索,出来的程序开发的模式,拥有更好的可复用性,可维护性,可读性,健壮性,安全性的解决方案
目前比较成熟的设计模式 有23种
单例模式
目的 : 让某个类只创建一个对象
实现步骤 :
控制创建对象的数量,不能让用户决定创建和不创建,由我们去控制,不能让用户直接访问我们的构造方法

1 构造方法私有化
私有化 的构造方法,用户创建不了对象了
对外提供一个公共的静态方法,调用该方法就能返回一个对象,
2 创建一个公共的静态的方法用来返回当前类的对象,并且保证 只实例化一次
当调用处通过该方法获取对象的时候,先判断是否已经创建了对象,如果没有就创建一个并存储
如果已经创建 就直接返回该对象
所以 需要 一个存储对象的变量,这个变量必须是和类生命周期相关的
如果是一个局部变量的话,方法每次调用,都会重新初始化局部变量,所以 每次都会创建对象
3 创建一个私有化的静态变量,用于存储当前类的对象(变量的类型,是当前类类型)

根据对象不同的创建时机,分为两种情况
1 懒汉模式 : 第一次获取对象的时候,再创建对象
2 饿汉模式 : 加载类的时候,就创建对象
工厂模式
工厂模式 : 把创建对象的语句单独封装成一个工厂模式
这个
这样 所有用到这个对象的地方,都去工厂中获取,把类之间强依赖关系变弱,灵活度更高

学习时间:

提示:这里可以添加计划学习的时间
例如:
1、 周一至周五晚上 7 点—晚上9点
2、 周六上午 9 点-上午 11 点
3、 周日下午 3 点-下午 6 点


学习产出:

提示:这里统计学习计划的总量
例如:
1、 技术笔记 2 遍
2、CSDN 技术博客 3 篇
3、 学习的 vlog 视频 1 个

标签:01,内部,19,创建,创建对象,对象,匿名,2021,方法
来源: https://blog.csdn.net/weixin_48206229/article/details/112852074

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有