基础加强

33 篇文章 0 订阅
1 篇文章 0 订阅
  1. 黑盒测试:功能测试;白盒测试:代码测试。单元测试就是一种白盒测试,一般都会使用JUnit4工具
  2.  junit4.x基于Java5开始的版本,支持注解.方法是public修饰的,没有参数,无返回的。安装插件
  3.  @Before @After @BeforeClass标签:在所有的Before方法之前执行,只在最初执行一次. 只能修饰静态方法
          @AfterClass标签:在所有的After方法之后执行,只在最后执行一次.   只能修饰静态方法; 执行顺序: BeforeClass->(Before->Test-After多个测试方法)-->AfterClass

  4. buildpath-->AddLibaray-->JUnit-->JUnit4

  5. Lombok是一款小巧的代码生成工具。buildpath-->AddLibaray-->use Library-->new -->add External JAR    or  导包-->buildpath

  6. 内省:BeanInfo info=Introspector.getBeanInfo(Class<?> beanClass, Class<?> stopClass);
    PropertyDescriptor[] pros=info.getPropertyDescriptors()

  7. 所有的Annotation接口都是java.lang.annotation.Annotation 接口的子接口,
    @interface Override {}
    所有的枚举类,都是 java.lang.Enum 类的子类.
    enum Gender{}
    注解被用来为程序元素(类,构造器、方法,成员变量等)设置元数据。

  8. 元注解:在定义注解的时候用来贴在注解上的注解,用来限定注解的用法
        @Retention、@Target、@Documented、@Inherited
    @Retention:决定注解可以保存到哪个时期
    注解的有效期有3个都封装在枚举:RetentionPolicy中
    RetentionPolicy.SOURCE:    表示注解只存在于源文件中,不会被编译到字节码中
    RetentionPolicy.CLASS:       表示注解会被编译到字节码中,但是JVM不加载注解
    RetentionPolicy.RUNTIME: 表示注解会被编译到字节中,会随着字节码的加载而进入JVM,因此可以反射性地读取
    开发的注解的有效期使用RUNTIME,这样才能在程序运行时使用反射赋予注解功能
    默认是RetentionPolicy.CLASS

  9. @Target:决定了该注解可以贴在什么地方
    都封装在枚举:ElementType中
    ElementType.ANNOTATION_TYPE      贴在注解上
    ElementType.CONSTRUCTOR               贴在构造方法上    
    ElementType.FIELD                                 贴在字段上(包括枚举常量)
    ElementType.LOCAL_VARIABLE           贴在局部变量上          
    ElementType.METHOD                          贴在方法上
    ElementType.PARAMETER                    贴在参数上
    ElementType.TYPE                                 贴在类、接口或枚举上
    不指定时,可以贴任意地方

  10. 定义注解的语法:
    public @interface VIP {
            //抽象方法/属性
    }
    注解的抽象方法称为属性,属性默认值使用:default 值;注解里只有属性
    使用注解语法:@注解名[(属性名=属性值,属性名=属性值)]
        例如:@VIP
    只有1个属性且是value时,value可省略
    属性的返回值类型只能是基本类型/枚举/Class/注解/String/枚举以及他们各自的一维数组

  11. Annotation[]  getAnnotations()  获取目标对象上所有的注解
    <A extends Annotation> A  getAnnotation(Class<A> annotationClass)  获取目标对象上的注解,没有则返回null
    boolean isAnnotationPresent(Class<? extends Annotation> annotationClass)  判断对象上是否有某种类型的注解 ,参数:注解的类型

  12. HTML: 显示数据到页面, 预定义标签
    XML:  传输数据,少量数据存储。而非显示数据
    XML标签没有被预定义,需要用户自行定义标签。
    声明XML文档:<?xml version="1.0" encoding="UTF-8"?>
    <![CDATA[数据内容]]>:把标签当做普通文本内容,不解析
    在XML中文本(包括回车换行,空格等看不见的字符)也是节点
    java代码中所做的操作,操作的是内存中的Document对象,和磁盘中的XML文件没有关系.
     File f = new File(“d://contact.xml”);
     DocumentBuilderFactory   factory = DocumentBuilderFactory.newInstance() ;
    DocumentBuilder  builder = factory.newDocumentBuilder();
     Document document = builder.parse(f);或者无f 时:newDocument ();

  13. node接口:
     String getTextContent()  :   获取当前元素下的文本内容
    void setTextContent(String textContent) : 设置当前元素下文本内容
    Node appendChild(Node newChild)   : 将指定元素添加到当前元素下面,做子元素
    Node removeChild(Node oldChild):  删除当前元素指定子元素,
    Node getParentNode()  : 获取当前节点的父亲节点    
    注意: 只能通过父元素来删除子元素

    document接口:
    Element      document.getDocumentElement();   获取根元素
    NodeList     document.getElementsByTagName(String tagName):  
                 获取整个xml文档中所有指定tagName的元素, 返回值是Node集合
    document.getElementById(String id)  :   通过指定id获取元素
    Element createElement(String tagName)  : 创建指定名称的元素

    element接口:
    NodeList    getElementsByTagName(String tagName);
         获取当前元素下指定标签名的子元素, 返回的是Node集合
    void setAttribute(String name,     String value)  :
                给当前元素设置一个属性, name 属性名字, value是属性的值
    romveAttribute(String name);   // 删除当前元素下指定名称的 属性
     Node getParentNode();   获取 当前元素的父元素

    同步操作:
    //创建同步转换器的工程对象
    TransformerFactory transformerFactory = TransformerFactory.newInstance();
    //创建同步转换器对象
    Transformer transformer = transformerFactory.newTransformer();
    //源:内存中document对象: dom树
    Source xmlSource = new DOMSource(document);
    //目标:磁盘中xml文件
    Result outputTarget = new StreamResult(f);
    //同步转换
    transformer.transform(xmlSource, outputTarget);

  14. DOM4J

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值