java学习第二十七天内容

1.前一天重点内容复习

        静态代理

                功能:就是让代理角色帮助真实角色完成一个功能,对真实角色功能增强

                使用:真实角色类和代理角色类都必须实现同一个接口

        等待唤醒机制

当利用生产者消费者模式去解决死锁问题时,生产者生产出数据,等待消费者去消费完数据才能继续生产

        如何实现同步机制

                使用synchronized同步代码块或者同步方法

                使用volatile关键字

                使用wait()和notify()

                使用锁对象lock

        创建线程的方式

                继承Thread类,重写Thread的run方法

                实现Runnable接口,重写Runnable接口的run方法

                线程池创建

        线程状态

                新建,运行,阻塞,死死等待,超时等待,终止

2.定时器

        定时器类:java.util.Timer

        作用:使用定时器完成定时任务,任务可以安排一次执行,或者定期重复执行

        构造方法:Timer()

        成员方法:

                public void cancel():终止此计时器,丢弃任何当前计划的任务

                public void schedule(TimerTask task , Date time)

                        第一个参数为计时器一次性或者重复执行的任务,为一个抽象类

                        第二个参数为执行任务的时间

                public void schedule(TimerTask task , long dalay):多少毫秒后执行一次任务

                public void schedule(TimerTask task , long dalay , long period):经过dalay时间毫秒后,执行这个task任务,每经过period时间间隔,重复执行任务

3.面向对象设计原则

        单一职责原则,也称为低耦合,高内聚原则

        开闭原则,核心思想为一个对象对扩展开放,对修改关闭

        里氏替换原则,核心思想为任何父类出现的地方都可以使用子类来代替

        依赖注入原则,所有的类应该依赖于抽象类和接口,不应该依赖具体实现类

        接口分离原则,一个接口应该只提供一种对外功能

        迪米特原则,一个对象应当对其他对象尽可能少的了解

4.设计模式分类

        创建型模式:以对象创建方式不同来划分

                简单工厂模式,工厂方法模式,抽象工厂模式,建造者模式,原型模式,单例模式

        结构型模式:以对象的组成不同来划分

                外观模式,适配器模式,代理模式,装饰模式,桥接模式,组合模式,享元模式

        行为型模式:以对象的行为来划分

                模板方法模式,观察者模式,状态模式,职责链模式,命令模式,访问者模式,策略模式,备忘录模式,迭代器模式,解释器模式

5.简单工厂模式

        介绍:就是定义一个具体的工厂类,专门创建一些类的实例

        优点:客户不需要负责对象创建

        缺点:如果有新的对象增加,且创建方式不同,则需要修改工厂类代码

6.工厂方法模式

        介绍:抽象工厂负责定义和创建接口,具体对象的创建工作由继承抽象工厂的具体类实现

        优点:客户端不需要自己创建对象,如果对象类型增加,只需要增加一个具体类和一个具体工厂类即可,不影响原来代码

        缺点:需要编写代码,工作量大

7.单例设计模式

        介绍:确保类在内存中只有一个对象,该实例必须自动创建,并且对外提供

        优点:内存中只有一个对象,节省内存空间

        缺点:没有抽象层,扩展功能难,只有一个对象要完成所有类的工作,职责过重,违反单一职责原则

8.File类

        作用:表示文件或者文件夹的抽象路径形式

        构造方法:

                File(String pathname)

                        参数为文件路径加上文件名称

                File(File parent , String child)

                        参数1表示文件夹路径,参数2表示文件夹里面的子文件

                File(String parent , String child)

                        参数1表示文件夹路径,参数2表示文件夹里面的子文件

        基本功能:

                public boolean createNewFile() throws IOException:创建文件

                public boolean mkdir():创建目录,不存在创建,存在返回false

                public boolean mkdirs():创建多个目录,如果父母录不存在,自动创建父类以及里面的子目录

                        带盘符的具体路径为绝对路径,不带盘符为相对路径,在当前文件夹下创建

                public boolean delete():删除文件夹或者文件

        判断功能

                public boolean exists():file所表示的路径是否存在

                public boolean isFile():是否是文件

                public boolean isDirectory():是否是目录

                public long length():获取长度

9.流的划分

        按流的方向划分

                输入流

                输出流

        按流的类型划分

                字节流

                字符流

        按流的类型及方向划分

                字节输入流 InputStream

                字节输出流 OutputStream

                字符输入流 Reader

                字符输出流 Writer 

        

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值