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 ...
随机推荐
- jsp 进度条
<html> <head> <title>进度条</title> <style type="text/css"> ...
- Cannot change version of project facet Dynamic Web Module to 2.4问题解决
问题现象: eclipse中,有个maven web项目,报错:Cannot change version of project facet Dynamic Web Module to 2.4,截图如 ...
- 理解OpenShift(2):网络之 DNS(域名服务)
理解OpenShift(1):网络之 Router 和 Route 理解OpenShift(2):网络之 DNS(域名服务) 理解OpenShift(3):网络之 SDN 理解OpenShift(4) ...
- Python递归调用
递归调用:在调用一个函数过程中,直接或间接又调用该函数本身,称之为递归调用 递归必备的2个阶段 1递推 2回溯 当递推结束后就可以进行回溯了 Python默认设置递归层数为1000 递归示例: de ...
- 解决Error:Could not determine the class-path for interface com.android.builder.model.AndroidProject.
见https://blog.csdn.net/qq_21397217/article/details/65630730博客
- 涨姿势:Java 异常?尝试自定义异常
1.异常 在Java中,每个异常都是一个名叫Throwable的类的一个实例 我们常用的try-catch-finally语句 try 尝试去执行try语句块里的内容,如果有异常,将其捕获,并执行ca ...
- hadoop 二次排序的思考
name sorce jx 10 gj 15 jx 20 gj 30 1. 二次排序 key如何定义 2. grouping 是不是一定要实现,不实现可以吗? 3. 二次排序的本质是什么 4. 如果以 ...
- git 提交小备注
总结: · git add -A 提交所有变化 · git add -u 提交被修改(modified)和被删除(deleted)文件,不包括新文件(new) · git add . 提交 ...
- 尚硅谷springboot学习25-嵌入式Servlet容器
SpringBoot默认使用Tomcat作为嵌入式的Servlet容器:
- JUC详解
一.Java多线程 -- JUC包源码分析1 -- CAS/乐观锁 乐观锁其实就是不加锁,用CAS + 循环重试,实现多个线程/多个客户端,并发修改数据的问题 使用AtomicStampedRefer ...