zoukankan      html  css  js  c++  java
  • 错题集

    String s = "hello";
    String t = "hello";
    1.char c [ ] = {'h','e','1','1','o'};
    System.out.println(s.equals (t)); //true  s和t指向内存常量区的同一个字符串  ;
    System.out.println(t.equals (c));//false 一个返回字符串,一个返回对象 ;
    System.out.println(s==t);// true  s和t指向内存常量区的同一个字符串 ;
    System.out.println(t.equals (new String ("hello")));//true equal用于比较两个对象的值是否相同,和内存地址无关
     
     
    2.Java线程之间的通信由Java内存模型(简称为JMM)控制,JMM决定一个线程对共享变量的写入何时对另一个线程可见。从抽象的角度来看,JMM定义了线程和主内存之间的抽象关系:线程之间的共享变量存储在主内存(main memory)中,每个线程都有一个私有的本地内存(local memory),本地内存中存储了该线程以读/写共享变量的副本。本地内存是JMM的一个抽象概念,并不真实存在。它涵盖了缓存,写缓冲区,寄存器以及其他的硬件和编译器优化

    volatile变量的写-读可以实现线程之间的通信。

    从内存语义的角度来说,volatile与监视器锁有相同的效果:volatile写和监视器的释放有相同的内存语义;volatile读与监视器的获取有相同的内存语义。

     

    3.ArrayList就是动态数组,用MSDN中的说法,就是Array的复杂版本,它提供了如下一些好处: 
       1> 动态的增加和减少元素 
       2> 实现了ICollection和IList接口 
       3> 灵活的设置数组的大小
     
    4.重载在一个类中,重写在继承中,重写中子类和父类相同方法名,参数类型和参数表
  • 相关阅读:
    LED点阵显示
    KEIL安装
    KEIL安装
    ubuntu安装svn
    python基础-面向过程编程
    js遇到代码出现问题时如何调试代码
    js内置对象的常用属性和方法(Array | String | Date | Math)
    js函数的使用+封装+代码复用
    JavaScript中条件分支语句和循环语句的使用,用简洁的代码实现强大功能
    JavaScript的语法、数据类型、基本算数和逻辑运算操作
  • 原文地址:https://www.cnblogs.com/bb3q/p/5089545.html
Copyright © 2011-2022 走看看