zoukankan      html  css  js  c++  java
  • programming杂记

    • 流相关操作中,IDEA下,使用@Test时,默认的基路径是当前Module,使用main方法默认路径是当前项目,所以读取文件时,输入流的相对路径设置需要注意
    • Scanner类中的nextLine()方法可以读取空符,只识别Enter键作为结束,从而下次读取时遗留了一个上一个nextLine()结束用的回车换行,所以再读取时就会将其率先读入(存在于缓存中),其他如next()、nextXxx()可以用方法遇到空符就会结束输入(遇到空符完成本次读取),必要时可用Ctrl+Z结束输入流
      • 另外,使用Test测试单元运行代码时,可能出现使用Scanner时,程序挂起,无法读取键盘输入的情况,有个修改根目录处的配置文件的方法,亲测无用(看自己环境),老实用main测试
    • 用JDBC 连接MySQL使用Query时,可以查询输出null值,出现乱码是可能是输出了其中的文件(如图片)
    • 封装工具类时,需要反复调用的static方法的共同部分可以下载此工具类的静态代码块中(静态代码块只会加载一次),避免重复加载,提升效率
      • 且对其中的方法可以使用try catch进行异常处理,省去调用者处理的步骤
    • 利用多态获取子类对象,此时父类引用指向子类对象,而后直接用此引用去调用子类重写的父类方法(如父类有play()方法,子类进行重写也有了),实际调用的是子类重写父类的方法
      • 可以看出,在多态中,方法的调用只与对象类型有关,与引用类型无关
    • 同样一个char字符,gbk编码下占两个字节,UTF-8下占三个字节
    • 使用测试单元(1.4)测试通过JDBC连接数据库查询数据时,其中调用了JDBCUtils工具类,出现异常:java.lang.NoClassDefFoundError: Could not initialize class jdbc.JDBCUtils,而换成正常main程序入口则不会出现异常,可以看出测试单元无法完成调用类之间的初始化(结论草率,暂时记录,搞清楚还是要了解测试单元的执行机制)
    • 调用字符串比较方法 equals() 时,已经确定的字符串写前面,可避免空指针异常;如 "a".equals(strVarible);
    • 接口实现类对接口内抽象方法空实现的意义:接口通常定义的是具体功能规范,可能存在多个抽象方法,如果功能类直接实现接口,那么就要实现其中所有的抽象方法,增加的代码量,所以就需要一个专用于实现接口的类,并对接口方法进行空实现,最后用功能类继承这个类,在根据需要重写方法即可;
  • 相关阅读:
    微信小程序 解决disableScroll无法禁止小程序下拉的问题和视频铺满全屏尺寸
    微信小程序无法获取手机号 error:改appid没有权限
    js localeCompare() 根据汉字首字母进行排序
    vue 引入本地JS中的json 数据解析
    vue 打包优化 外部资源 elementUI axios等引入
    vue中 高德地图获取定位
    vue 与qrcodejs2 生成的二维码 logo 居中
    Mac vue-cli2.x版本升级3.x方法
    微信小程序 cover-view在 Video(原生组件)中遇到的问题
    Mac安装Vue-cli时 提示bash: vue: command not found问题
  • 原文地址:https://www.cnblogs.com/csyh/p/12402962.html
Copyright © 2011-2022 走看看