其他分享
首页 > 其他分享> > 常识

常识

作者:互联网

  1. IDEA新建项目时候的groupId :公司域名反过来,如com.alibaba

  2. JSON(JavaScript Object Notation)是一种基于JavaScript语法子集的开放标准数据交换格式。

  3. lazy loading懒加载也被叫作“延迟加载”,它的核心思想是把对象的实例化延迟到真正调用该对象的时候,这样做的好处是可以减轻大量对象在实例化时对资源的消耗,而不是在程序初始化的时候就预先将对象实例化。

  4. 在git分支工作前,先pull最新代码

  5. “hello”和new String(“hello)的区别:当Java程序直接使用了字符串直接量(形如”hello“,包括可以在编译时就计算出来的的字符串值)时,JVM将会使用常量池来管理这些字符串;当使用new String(“hello”)来创建时,JVM会先使用常量池来管理"hello"直接量,再调用String类的构造器来创建一个新的String对象,新创建的的String对象会存放到堆内存中去,也就是说new String(“hello”)产生了两个字符串对象。

    • 常量池是专门用来管理在编译时被确定并保存在已编译的的.class文件中的一些数据。它包括了关于类,方法,接口中的常量,还包括字符串常量。JVM常量池保证相同的字符串直接量只有一个,不会产生多个副本。
    • String对象所引用的字符串直接量可以在编译期就确定下来。使用new String()创建的字符串对象是运行时创建出来的,它被保存在运行时内存区(即堆内存中)
  6. 字符串的不变性:

    String是不可变类,一但一个字符串创建它是不能被改变的,对字符串进行任何更改操作都会产生新的String对象,我们应该注意所有的关于String类的方法不是改变一个字符串本身,而是重新返回一个新的字符串。如果我们需要一个频繁的改变一个字符串对象,我们可以使用StringBuffer或者StringBuilder,否则将会浪费大量时间进行垃圾回收,因为每次创建一个新的字符串。StringBuilder与StringBuffer是可变类,它们的字符串对象可以更改,对可变字符串的操作不会生成新的对象,即对同一个字符串对象操作。

  7. instanceof :严格来说是Java中的一个双目运算符,用来测试一个对象是否为一个类的实例,用法为:

    boolean result = obj instanceof Class;
    

    其中 obj 为一个对象,Class 表示一个类或者一个接口,当 obj 为 Class 的对象,或者是其直接或间接子类,或者是其接口的实现类,结果result 都返回 true,否则返回false。

  8. 哈希表能解决什么问题呢 :

    一般哈希表都是用来快速判断一个元素是否出现集合里

  9. 控制台打印一个数组:

    int[] app = {1,2,3,4,5};
    System.out.println(app);//打印出  [I@7cc355be
    System.out.println(app.toString());//打印出  [I@7cc355be
    System.out.println(Arrays.toString(app));//打印出  [1, 2, 3, 4, 5]
    
  10. 不能相信调用端。重要的参数都要先做验证,即使是非空值也需要做验证,不符合条件的就要直接返回或抛异常,不能参与业务 SQL 的查询,否则频繁的访问也会对服务造成负担。

  11. SQL 语句要先做性能查询。对于数据量大的表,建好索引后,所有的 SQL 查询语句要用 explain 检测性能,并且根据结果来进一步优化索引。

  12. HTTP协议是客户端和服务器交互的一种通迅的格式。

  13. 在Sun公司发布的Java Servlet规范中,对Web应用程序做出了如下的定义:“一个Web应用程序是由一组Servlet、HTML页面、类,以及其他的资源组成的运行在 Web服务器上的完整的应用程序。它可以在多个供应商提供的实现了Servlet规范的Web容器中运行

  14. 框架很多,但套路基本类似,帮你隐藏很多关于 HTTP 协议细节内容,专注功能开发

标签:String,对象,常识,一个,字符串,hello,常量
来源: https://www.cnblogs.com/yu-zexin/p/16240880.html