java 复习
整型:
byte 1 short 2 int 4 long 8
0b1001 1_233_32 1341414141414L
java 没有无符号类型
浮点型:
float 4 double 8
12.2f 无后缀为double
Double.isNaN(x) 不能==Double.NaN
BigDecimal 无误差
U+d800~U+DBFF Unicode标准中
java中 char用UTF-16[?]编码描述一个代码单元
Character isJavaIdentifierStart isJavaIdentifierPart
strictfp 严格浮点计算 截断中间结果 可能产生溢出
&&和||关系运算有短路方式 ,& |位运算没有
>>>高位填0 ;>>高位填符号位
对移位运算符右侧参数要进行模32运算(除非左为long型),
java String unicode字符序列
str==null && str.length()!=0
CharSequence char 值的一个可读序列 "abc"
if(Character.isSupplementaryCodePoint(cp))
i +=2;
else
i+=1;
StringBuffer threa_safe
StringBuilder no guarantee of synchronization
Scanner in = new Scanner(System.in); //从控制台读取
控制台读密码:
Console cons = System.console();//eclipse 有bug null
String username = cons.readLine("username:");
char[] passwd = cons.readPassword("password:");
读文件
Scanner in = new Scanner(Paths.get("D:\\2016\\myfile.txt"));
while(in.hasNextLine()){
System.out.println(in.nextLine());
}
写文件
out = new PrintWriter("myfile2.txt");
out.println("国");
out.close(); out = new PrintWriter("myfile2.txt");
out.println("国");
out.close();
new Object(){}.getClass().getEnclosingClass() //gets class of static method
接口中的内部类自动成为static 和public类
代理类 运行时创建全新的类
Proxy.newProxyinstance(classloader,Class[] interfaces,invocationhandle)
泛型
虚拟机中没有泛型,只有普通方法 和类
桥方法(泛型方法被类型擦出后,编译器生成的方法来限定类型)被合成来保持多态
协变 多态的延伸;逆变 类型精细化
基本类型不能作泛型参数,因为有类型擦出
运行时类型查询只能用于原始类型(非泛型)
不能创建参数化类型的数组 ,但可声明,只是不能 new xx<XX>[]
ArrayList<Pair<String>>
泛型类的静态上下文中类型变量无效
不能抛出或捕获泛型类型实例
String.class 是 Class<String>类的对象
java break label 只能跳出语句块
java 不能在嵌套块中重定义变量
switch case可以是 char byte short int 及常量表达式,字符串字面量
Arrays.toString(a)
int[] ar = {1,2,3}
ar = new int[]{2,3,4}
Arrays.copyOf(nums, 2*nums.length); 增加数组长度
int r = (int)(Math.radom()*n); //小于n的随机数
GregorianCalendar calendar = new GregorianCalendar(year,month,day)
Date hireday = calendar.getTime()
java 没有引用传参
java 可以构造器中调另一个构造器 this(xx,xx)
初始化块{}
Runtime.addShutdownhook()
finalize gc前调用
不是private static final方法 才能动态绑定
java 中 potected 对子类及同一个包中所有其他类都可见
默认 本包可见
new Arraylist<>()
Number 是 Integer Long Float Double Short Byte 超类
java 复习的更多相关文章
- java 复习003 之排序篇
由java 复习003跳转过来的C语言实现版见some-sort-algorithms 快速排序(不稳定 O(n log n)) package vell.bibi.sort_algorithms; ...
- java 复习001
java 复习001 比较随意的记录下我的java复习笔记 ArrayList 内存扩展方法 分配一片更大的内存空间,复制原有的数据到新的内存中,让引用指向新的内存地址 ArrayList在内存不够时 ...
- java复习(1)---java与C++区别
[系列说明]java复习系列适宜有过java学习或C++基础或了解java初步知识的人阅读,目的是为了帮助学习过java但是好久没用已经遗忘了的童鞋快速捡起来.或者教给想快速学习java的童鞋如何应用 ...
- Java复习11. 单例编程
Java复习11. 单例编程 1.最简单的写法,那个方式是线程不安全的 public class Singleton { private static Singleton instance; ...
- Java复习9网路编程
Java 复习9网路编程 20131008 前言: Java语言在网络通信上面的开发要远远领先于其他编程语言,这是Java开发中最重要的应用,可以基于协议的编程,如Socket,URLConnecti ...
- Java复习8.多线程
Java复习8 多线程知识 20131007 前言: 在Java中本身就是支持多线程程序的,而不是像C++那样,对于多线程的程序,需要调用操作系统的API 接口去实现多线程的程序,而Java是支持多线 ...
- Java复习10.Servlet编程
Java复习10. Servlet编程知识 20131008 前言: 之前在大三下的时候,学习了一个月的JSP和Servlet知识,但是没有什么项目经验,把JSP Web开发学习实录看了前面几张,后面 ...
- Java复习6异常处理
Java复习6.异常处理 20131005 前言: Java中的异常处理机制是非常强大的,相比C++ 来说,更加系统.但是我们开发人员没有很好的使用这一点.一些小的程序是没有什么问题的,但是对于大型项 ...
- Java复习4.数组初始化.
Java复习4.Java中的数组声明方式 20131004 1.数组声明和初始化, 数组元素和变量一样,可以在定义的时候i进行初始化.数组元素的初始化工作实在编译阶段完成的,可以减少运行时间. 在初 ...
- Java复习7.输入输出流
Java复习7.输入输出流 20131005 前言: Java中涉及数据的读写,都是基于流的,这一块的知识相当重要,而且在Java中的数据,char字符是16bit的,所以存在字节流和字符流的区别.如 ...
随机推荐
- git克隆项目到一个非空目录
这只是记录: 1. 进入非空目录,假设是 /workdir/proj1 2. git clone --no-checkout https://git.oschina.net/NextApp/platf ...
- startUML常用的组合片段
1. 常用的组合片段 片段类型 名称 说明 Opt 选项 包含一个可能发生或可能不发生的序列. 可以在临界中指定序列发生的条件. Alt 抉择 包含一个片段列表,这些片段包含备选消息序列. 在任何场 ...
- Centos linux php扩展安装步骤
使用phpinfo()函数输出PHP信息,然后找到Configuration File (php.ini) apachectl 其设计意图是帮助管理员控制Apache httpd后台守护进程的功能. ...
- IRS-P6数据介绍
IRS-P6发射于2003年10月17日,星上携带三个传感器:多光谱传感器LISS4和LISS3,以及高级广角传感器AWIFS.LISS3传感器具有四个光谱波段分别位于可见光.近红外与短波红外区域,空 ...
- $watch 和 $apply
1.当你使用 ng-model, ng-repeat 等等来绑定一个元素的值时, AngularJS 为那个值创建了一个 $watch,只要这个值在 AngularJS 的范围内有任何改变,所有的地方 ...
- C/C++下Netbeans的配置
目录 目录1 1 netbeans开发环境搭建2 2 netbeans工程管理2 2.1 采用IDE自动生成Makefile2 3 netbeans工程配置2 3.1 编译工具链3 3.1.1 添加配 ...
- javaSE第二十二天
第二十二天 312 1:登录注册IO版本案例(掌握) 312 2:数据操作流(操作基本类型数据的流)(理解) 313 (1)定义: 313 (2)流对象名称 313 (3 ...
- PE查看器
主要界面如下: 主要代码如下: BOOL CPEParseDlg::OnInitDialog() { CDialog::OnInitDialog(); // 设置此对话框的图标.当应用程序主窗口不是对 ...
- sqlite3_exec函数的使用
sqlite3_exec函数的使用 sqlite3数据库是一个小型的关系型的数据库,以文件的方式存在,打开文件即是打开数据库,它小巧且功能强大,在嵌入式领域内使用很广.现在就介绍一下其中一个重要函数的 ...
- android版猜拳游戏源码分享
android版猜拳游戏源码分享安卓版猜拳游戏源码,该文件中带有安装测试包的,这个游戏源码比较简单的,现在有两个代码,一个自定义VIEW的,一个就是普通的imageView图片,游戏非常适合一些新手的 ...