`
namezhou
  • 浏览: 160738 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Java 拾遗 2010-06-06 小知识点

阅读更多

Java 拾遗 2010-06-06

1.jdk5.0 以后,可以使用16进制表示浮点数,0.125 可以表示为 0x1.0p-3 在16进制表示法中,使用p表示指数
  而不是e,尾数使用16进制,但是指数采用10进制,指数的基数是2而不是10.
2.Double.POSITIVE_INFINITY,Double.NEGATIVE_INFINITY,Double.NaN (或者Float.*)表示正无穷大,负无穷大
  和NaN(不是数字)
  判断if(x == Double.NaN)永远不会返回True
  可以使用Double.isNaN(x)检测x是否是一个数字
3.整数被0除 会产生一个异常 ,浮点数被0除会得到无穷大或者NaN,但不会产生异常
4.java 虚拟机默认的浮点计算都是基于不同处理器的处理精度的,因此在不同平台上的计算结果可能会有精度的不同
  如果希望在所有的平台上获得相同精度的计算结果,可以在方法前面加strictfp 关键字,如果在类的声明上添加该       关键字,则类中所有的方法都会采用严格的浮点运算精度,而与平台无关.
5.基本类型的转换
6.Scanner.next() 读取输入的下一个单词,以空格作为分隔符
7.Console 类 可以实现密码输入的*号回显 (>=JDK6)
 Console cons = System.console();
      String username = cons.readline("User name:");
 char[] password = cons.readPassword("password:");
默认是无回显的
8.java 的break 标签,可以用于任何语句中
9.大数据类型 大整数 BigInteger 和 大浮点 BigDecimal
  创建 对象 BigInteger bi = BigInteger.valueOf(12);
 基本运算 (必须都转换成大类型才可以参与运算)
 add(bi) +
       substract(bi) -
       mutiply(bi) *
       divide(bi,[RoundingMode]) / RoundingMode 常量可以设置舍入方式,四舍五入为RoundingMode.HALF_UP
      mod(bi)  %
      compareTo() ==
10.数组拷贝的两个函数 System.arrayCopy(from,fromindex,to,toIndex,count)
                     array Arrays.copyOf(fro,length)
11.检查数组中是否存在某个值,Arrays.binarySearch(arr,value) 采用二分查找法,如果找到则返回下标,找不到返回一个负数
  还有一个重载的方法 Arrays.binarySearch(arr,[int start],[int end],value)
12.快速的预览二维数组,常用在调试中,Arrays.deepToString(arr) 输出格式 [[],[],[]]
13.类设计中 如果类的一个属性是引用类型的,就不应该为其设置 getter ,这样会保护暴露保护域,因为如果一个类外的变量使用getter得到了对象中的属性的引用
 就可以跳过setter直接改变引用对象的值
 demo: class Employ{
  private Date birthday;
  public Date getBirthday(){
   return this.birthday
  }
 }
 Employ tom = new Employ();
 Date d = tom.getBirthday();
 d.setTime()....//同时改变了tom的birthday
14.重要:一个类的方法可以访问任一此类的对象的私有域
 demo class Employ{
   private String name;
   boolean equals(Employ e){
    return this.name.equals.(e.name) //this is ok
   }
  }
15.使用import * 导入包时,*只能指代一层
16.System.runFinalizersOnExit(true) 可以保证finalizer方法在程序退出前被执行,但是无法保证在什么时候执行
17. java不会对局部变量进行初始化,但是会对对象的属性进行初始化
18.如果把一个类声明为finall的,则其中的方法自动成为finall的,但是属性不会自动的成为finall的
17.ArrayList trimtoSize() 删掉Arraylist 内置数组中空白的数组元素,
18.参数数量可变的函数 jdk5
public static max(double... values){
 values 是一个double型的数组,遍历之...
}
19.普通内部类 可以直接访问外部类的 私有属性
20.外部类的方法内部的内部类,不仅可以访问 外部类的私有属性,还可以访问方法中的局部变量,但是局部变量必须是finall的
21.匿名内部类 直接 new 一个接口,然后在{}中实现接口的 方法 ActionListener listener = new ActionListener(){
 public void actionPerformed(){
  //实现
 }
}
22.静态内部类 外部的类是不能声明为static的,只有内部类可以
  特点:不能访问外部类的非静态属性 ,方法和属性必须全是静态的
  可以直接从外部类调用而不需要实例化外部类 String xx = Outer.Style.someMethod();

分享到:
评论

相关推荐

    java知识拾遗-三大框架的技术起源.docx

    Java开发中的三大框架——Struts、Hibernate和Spring,都是为了解决传统Java Web应用程序中存在的一系列问题而诞生的。这些框架分别针对MVC模式的实现、数据持久化和依赖管理给出了高效且灵活的解决方案。 Struts...

    java回顾、知识整理、拾遗、面试_java-review.zip

    拾遗部分则是对Java中一些较为偏僻但又可能在实际开发中遇到的知识点进行整理,如Java中的设计模式应用、一些不常用的库和类、或者是开发中经常被忽视的细节问题。这部分内容有助于完善学习者的知识体系,使其更加...

    Java知识拾遗:三大框架的技术起源

    ### Java知识拾遗:三大框架的技术起源 在Java开发领域,Struts、Hibernate与Spring作为三大主流框架,各自承担着不同的角色与职责,并为开发者提供了高效便捷的应用开发体验。了解这些框架的技术起源和发展历程,...

    《计算机底层知识拾遗》.pdf

    计算机底层知识拾遗系列专栏涵盖了计算机科学与技术领域的基础理论和关键技术点。该系列旨在深入探讨计算机组成原理、操作系统原理、网络基础等核心知识,并尝试将这些底层知识与上层的应用层知识进行结合,形成完整...

    Java JDK 6.0 学习笔记.pdf

    通过系统地学习这些知识点,你将能够全面掌握Java JDK 6.0,并为未来的Java开发工作打下坚实的基础。随着技术的发展,不断学习新版本的Java特性,如Lambda表达式、模块化系统等,以保持与时俱进。

    java面试进阶讲义

    ### Java面试进阶讲义知识点总结 #### 一、Java语言拾遗 ##### 1、Vector与ArrayList - **起源与版本**:`Vector` 类自 JDK 1.0 就已存在,从 Java 2 平台 v1.2 开始进行了改进,实现了 `List` 接口,使其成为 ...

    超值个人java学习笔记

    【Java基础】 Java语言是面向对象的编程语言,其基础包括语法、数据类型、变量、运算符、控制...这些知识点构成了Java学习的重要组成部分,通过深入理解和实践,你可以逐步掌握成为一名合格的Java开发者的必备技能。

    Spring mvc 学习拾遗.doc

    ### Spring MVC 学习知识点概览 #### 一、Spring MVC 概述 Spring MVC 是 Spring Framework 的一个重要模块,主要用于简化 Web 应用程序的开发。它提供了清晰的模型视图控制器架构,使得开发者能够更好地组织代码...

    数据库及垃圾回收相关拾遗

    在数据库系统中,我们关注的主要知识点包括数据库类型(如关系型数据库、非关系型数据库)、数据库模型(如关系模型、网络模型、层次模型)、SQL语言、事务处理、并发控制、索引结构、备份与恢复以及性能优化等。...

    2018年下半年软件设计师真题和答案.rar

    通过学习和理解这些知识点,考生可以全面地准备软件设计师考试,提高自己的专业技能和应试能力。同时,了解真题和答案也能帮助考生了解考试的难度和出题风格,以便更好地进行模拟训练,提升考试成绩。

Global site tag (gtag.js) - Google Analytics