java30
1.类的组合关系
当一个类中的字段是一个类时,就称类依赖于字段这个类,也称这两个类为组合关系
2.快捷键:ctrl+shift+c,多行的//
ctrl+shift+/,多行的/-----/
3.类的加载:随着对象的创建而使用
3.static{ }静态代码块会随着对象的创建而使用,而且在编译时会首先调用public所在类
中的静态代码块
4.继承弊端:可以被子类随意改动调用,暴露细节
final关键字:保证数据的安全性
可以修饰字段,方法,类
使用final之后
字段:不可以被修改
方法:不可以被覆盖
类:不可以被继承
5.final注意点:
final修饰字段时,字段是没有初始值,必须得自己手动输入初始值
final修饰变量时,就代表是一个常量,常量命名规则:所有字母都得大写MAX_VALUE,并且
每个单词之间要有下划线
flinal可以在局部代码块当中使用
final在修饰基本数据类型时,值是不能修改的,
在修饰引用数据类型时,地址是不能修改的。
???????????????????????????????????????????????
6.设计模式:经过许多人推敲后的代码设计的经验总结
单例设计模式:一个类在内存中只有一个对象
在开发过程中经常会有一个工具类(要反复使用)
减少资源的浪费
饿汉模式:一上来就创建一个对象
-1创建并私有化一个对象(外界使用我这个对象时就是我创建的这个对象,不能改变)
-2私有化构造器(防止外界通过构造器来创建这个类中新的对象)
-3给外界一个方法可以使用这个工具
return方法
加上static ,工具就属于类了,调用时是类名.返回方法名(无论怎么调用,
都是会返回这个工具)
懒汉模式(使用时才创建对象)
7.单例类优点:
控制资源的使用
节省资源
能够作为通信媒介,实现数据共享(用的是同一个数据)
8.饿汉模式的单例是无法被继承的(把构造器私有化了,防止外界通过子类来为父类创建新的对象)
9.单例设计模式常用包名:tool/tools/util/utils
工具类:经常使用的功能(Arrays就是一个工具类)
10.工具类中一般都是设计成静态,直接类名调用就好
工具类中的方法如果没有静态,还可以设计成单例的形式,通过对象来调用方法
如果工具中全部都是static修饰,那么必须把构造器私有化,防止外界创建对象时调用静态方法。
java30的更多相关文章
- java—— finall 关键词
_ *{ margin: 0; padding: 0; } .on2{ margin: 10px 0; cursor: pointer; user-select: none; color: white ...
- Java基础之枚举类型
枚举 为什么需要枚举 在Java开发过程中,有时需要定义一系列有限的数据,如:月份.星期等.<br> java1.5之前,主要通过定义一系列静态常量完成. class Genders{ p ...
- (007)每日SQL学习:将字符和数字分离
with aa as ( select 'sad10' as data from dual union all select 'datf20' as data from dual union all ...
随机推荐
- Windows不要使用记事本编辑文本文件
摘自:廖雪峰 千万不要使用Windows自带的记事本编辑任何文本文件.原因是Microsoft开发记事本的团队使用了一个非常弱智的行为来保存UTF-8编码的文件,他们自作聪明地在每个文件开头添加了0x ...
- [UE4]Border
Border: 边界; 边; 镶边; 包边; Border也是一个容器,只能包含一个子元素. 一.添加一个名为testBorder的UserWidget,添加一个Border到默认成Canvas Pa ...
- vi 使用小结
复制 1,ny 从哪行到哪行的复制,中间用逗号隔开,然后命令y. 黏贴 是在命令模式下直接按p即可 跳到n行: 命令模式直接输入数字即可 剪切:d命令 删除:x命令 跳到行首行尾:直接home或end ...
- Vue 父组件调用子组件函数的方法
parent.vue(父组件的内容): <template> <div @click="divClick"> <info-wnd ref=" ...
- Redis梳理
- LVM逻辑卷疑问?
创建完逻辑卷后,删除以/dev/vdb1和/dev/vdb2为基础的分区后,逻辑卷依然生效???
- ajax----tomact服务器运行
一.菜鸟教程的代码本地运行 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> ...
- Eclipse中创建一个新的SpringBoot项目
在Eclipse中创建一个新的spring Boot项目: 1. 首先在Eclipse中安装STS插件:在Eclipse主窗口中点击 Help -> Eclipse Marketplace... ...
- Node2.js
Node.js简单爬虫的爬取,也是跟着慕课网上抄的,网站有一点点改动,粘上来好复习嘛 var http = require('http') var cheerio = require('cheerio ...
- Java虚拟机 垃圾收集器与内存分配策略
说起GC,我们要思考的主要有三件事 哪些内存需要回收 那些已经“死去”的对象,那么哪些对象“死”,哪些对象“活”呢,有个简单的办法 引用计数法,但是没法解决循环依赖问题 所以Java虚拟机采用的是可达 ...