A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© zhouxiaomeng 初级黑马   /  2018-4-23 15:39  /  709 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 小石姐姐 于 2018-4-25 15:43 编辑

day09  IO流笔记
一. File类
        File类 在io包下,文件和目录路径名的抽象表示形式;File类的实例是不可变的
        三个构造方法:
        File(String path):将指定的路径名转换成一个File对象,指向一个路径,其他的什么都没干;
        File(String parent,String child):根据指定的父路径和文件路径创建的File对象;
        File(String parent,String child)::根据指定的父路径对象和文件路径创
        
        File类常用功能:
                绝对路径:固定不可改变的路径,以盘符开头;
                相对路径:相对某个参照物,不能以盘符开头;
                                在eclps中的相对路径对应当前强木的根目录;
                创建:
                        createNewFile():创建文件,返回boolean类型,当指定文件不存在时,创建对接并返回true,否则返回false;
                        mkdir():返回boolean类型,当指定文件夹不存在时,创建对接并返回true,否则返回false;
                        mkdirs():创建指定文件夹当文件夹所谓的目录不存在,额顺道一块创建了;
                删除:
                        delete():当指定的文件或者文件夹存在时,删除文件并返回true,否则返回false;
                        
                注意:删除一个文件夹,这个文件中不能有文件或者子文件夹
               


                获取:
                        getxxx()
                判断:
                        exists():判断文件或者文件夹是否存在;存在true,否则false;
                        isAbsolute():判断File对象指向的路径是否是绝对路径,如果ss则true;否则false;
                        
                        isDirectory()判断File对象指向的路径是否是文件夹;
                        isFile():判断File对象是否是文件;
                        idHidden();判断File对象指向的路径是否有隐藏属性;
                        
                修改文件名:
               
                        renameTo(File dest);将当前File对象所指向的路径修改为指定File所指向的路径;
        
        
                重要的获取功能:
                                1. String[] list():返回的是当前路径下所有的文件和文件夹名称数组;
                                *注意:只有指向文件夹的File对象才能调用该方法;
                                2. File[] listFiles():返回当前路径下所有的文件和文件夹File数组
                                
                                3.        listRoot();获取系统根目录
                                
二. IO流分类:
                流向:
                                输入流: 读取 FileReader--Reader
                                输出流: 写出数据; FileWriter--Writer;
                数据类型:
                        字节流:
                                *输入流 读取数据,InputStream;
                                *输出流;写出数据 OutputStream
                        字符流;
                                字符输入
                                字符输出
                        二进制文件只能使用字节流进行复制,使用windows自带技术本打开读不懂的就是二进制文件;
                        文本文件的复制既可以使用字符流,也可以使用字节流;
day10  IO流笔记

一.IO流
        |_ 标准流
                |_ System.in(InputStream)       键盘录入
                |_ System.out(PrintStream)      控制台输出
        |_ 转换流
                |_ OutputStreamWriter           以操作字符流的方式按字节流写出
                |_ InputStreamReader            以操作字符流的方式按字节流读入
        |_ 打印流
                |_ PrintWriter                  具有自动刷新, 自动换行的特点
        |_ 对象流
                |_ ObjectInputStream            从文件中读入一个对象到内存中
                |_ ObjectOutputStream           将内存中的对象写入到文件中
集合
        |_ Properties                       用于与IO流结合读取配置文件, 键值对形式, 实现Map(key-value)
乱码
        |_ 乱码的原因: 多种编码表查错了
        |_ 字符串编码的转换


二. 对象操作流:
        2.1 对象操作流程的概述;可以用于读写任意类型的对象;属于字节操作流程;
                        对象输出流;ObjectOutputStream
                                                        writeObject
                        对象输入流;ObjectInputStream
                                                        readObject
                **主题使用对象输出流写出对象,只能使用对象输入流读取对象;
        
        
        
        2.2使用对象操作流读写对象
        ;
        2.3解决对象输入流去对象出现异常的问题;
        2.4解决对实现
        
三. Properties类概述;配置文件;类似Map,
        构造方法

Properties()

        成员方法具体store(重要,其他的具体查API文档)
day11  多线程笔记

一.        多线程概述和多线程实现(两种实现方式必须学会);
        线程和进程;一个进程里面可以有多个线程;
        多线程:
               
        
        进程:当前正在运行的程序,一个应用程序在内存中的执行区域;
        线程:进程中的一个执行控制单元,执行路径;
        进程>线程
        一个进程可以有一个线程,也可以有多个线程;
        
        单线程:安全性高,但是效率低;
        多线程:安全性低,但是效率高;
        
        多线程案例:迅雷可以同时下载多个片;360卫士等;
        
        拓展:
                并发:并行发生,同时发生,多个线程就可以实现并发;
               
                同步:sync,同步是指一部接一步的执行,一个执行完毕再执行下一个;
               
                异步:不是一步一步执行,而是同时执行多步,每个步骤合适结束不确定;
                多线程就是异步;
               
                一个线程内的代码是同步执行,不同线程的代码是异步执行;
               
                阻塞:上一行的代码正在执行,还没有执行完毕,程序集流阻塞在这里了,上一行代码执行以后才能继续;
创建线程的方式:
        方式一 继承Thread类;
                Thread类已经实现Runable接口;
                CPU执行线程的顺序的随机性;
                主方法找那个的代码的执行是多线程还是单线程?
                主方法是单线程;
        方式二:实现Runable接口;
        
        
                构造方法:
                        空参;
                        有参;
                        
                        
                        
               
                成员方法:
                        run();重写方法;
                        start();启动线程;
                        getName();返回线程名称;
                        void setName(Streing name);改变线程名称,使之与参数name想相同;
               
                静态方法:
                        
                        


二.        多线程安全问题产生和解决方案
        共享数据的时候记得加锁(同步代码块和同步方法)
        synchronized (锁对象) {}


day13 反射笔记

获取字节码对象的3种方法
                1. `对象.getClass()`
                2. `类名.class`
                3. `Class.forName(String fullClassName)`


反射能干的事
                * 获取一个类的字节码对象, 通过该字节码对象:
                        * 获取一个类的构造方法(public或全部权限的)
                        * 创建一个类的对象
                        * 获取一个类的成员属性(public或全部权限的)
                                * 获取属性值
                                * 设置属性值
                        * 获取一个类的成员方法(public或全部权限的)
                                * 调用成员方法
BeanUtils
        * Apache组织提供的第三方类库`Commons`中的一个组件
        * 作用:
                * 利用反射技术给一个类的对象的成员属性赋值或获取值, 用于快速封装数据到JavaBean
        * BeanUtils类常用的3个方法
                * `static void setProperty(Object bean, String name, Object value)`: 给JavaBean对象的成员属性赋值, 传入对象, 成员属性名, 属性值
                * `static String getProperty(Object bean, String name)`: 获取JavaBean成员属性的属性值, 传入对象, 成员属性名, 返回属性值的字符串形式
                * `static void populate(Object bean, Map properties)`: 给JavaBean对象的成员属性赋值, 传入对象, Map的key是属性名, value是属性值

.
JavaWebDay01  HTML笔记

HTML:超文本标记语言;
        主要学习标签;
1.字体标签:
        <font></font属性:
                 color字体颜色 可以用16位来表示,也可以用英文red green blue等等之类来表示;
                 size字体大小  1-7号字
                 face字体类型;用的好像不是太多
        <b>加粗        </b>
        <i>斜体</i>;
        <u>下划线</u>;
2.图片标签:
        <img></img> 属性:
                     src:路径,可以写相对路径也可以写连接;
                     width:宽度;
                     height:高度;
                     alt:图片打不开的时候要提示的汉字;
3.超级连接标签:
        <a></a>属性:
                 href:链接路径;
                 target:三种打开方式,现在主要学两种:
                 _self:在自身窗口打开;
                 _blank:在新窗口打开;
                 _parent:听说在学习框架的时候会用,现在做了解,知道他;
                                
                                
4.排版标签:
        <p>:段落标签:段落与段落之间会个较大的空行;
        <hr>:分割线标签;
        <h1></h1>
        .....
        <h6></h6> 6种标题标签 从大到小;
        </br>换行;
        <center>居中;

5.列表标签:
        <ol></ol>有序标签;
                        属性:type:1 a A i I;
                             start:从哪开始
        <ol></ol>有序标签;
                        属性:type:disc 实心点.
                                  circle 空心圆
                                  square 方块.
6.表格标签:
        <table></table> 属性:
                        board 边框大小;单位px;
                        width:宽度 可以用像素表示也可以用百分比表示;
                        height:高度,可以用像素表示也可以用百分比表示;
                        bgcolor:背景颜色;
                        background:背景图;
                        align:对齐方式,居中,左对齐,右对齐;
        <tr> row是行标签,所以是行标签:
        <td> 是列标签(也可以理解成单元格)
        ***重点:
                        1.嵌套单元格;
                        2.合并单元格:
                                  夸行合并是:rowspan;
                                  跨列合并是:colspan;
                                  两者后面的数值是合并单元格的个数,并且要降被吞并的单元格的标签去掉;
7.***表单标签***:(很重要):
                <form>表单标签属性:
                                1.action:提交的地址,如果不添加则提交到当前页面;
                                2.method:GET和POST两种提交方式;
                                GET:提交的数据直接在地址栏显示,而且数据大小有限制,不太安全;
                                POST:提交的数据看不到,数据大小无限制,比较安全;
表单元素三个:
            1.<input/>表单输入:
            <input type="" name = "" value="" checked是默认选中的属性;/>
            type="text":文本输入框;
            type="password":密码输入框;
            type="radio" ;单选要写默认值value;
            type="checkbox";复选要写默认值;
            type="reset";重置;
            type="submit";'提交;
            tyoe="button";按钮,无任何意义;
            type="file":上传文件;
            type="hidden":固定
                                                                                
                                                                                
                                                                                
            2.<select>下拉框:
              <select  name="">
              <option value="提交到后台的值"></option>
              </select>
            3.textarea文本域:
              <textarea name="" rows="几行" cols="几列"></textarea>
                                                

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马