======================================================
注:本文源代码点此下载
======================================================
这篇文章主要搜集我遇到的一些关于java的细节问题,主要目的是应对笔试面试。
=============================================
【基础语法】
1 浮点常数默认是double型,如果要指定为float型,需在常数后加f。
2 对于整数,+ - * /运算符的最小类型是int,所以short s = 1; s = s + 1编译时不通过的,即使改成s = s + (short)1也不行,只能这样写(short)(s + 1)。
而s += 1则没有问题。
3 java中有goto保留字,但不允许使用。
4 switch语句可以作用于int或是能够自动转型成int的数据类型
【类】
1 在外部类外创建内部类:
class out {
class in {}
}
…………
out out = new out();
out.in in = out.new in();
如果是嵌套类(又叫静态内部类)则不用创建外部类的实例
class out {
static class in {
public void print() {
system.out.println("nested class");
}
}
}
public class nestedclass {
public static void main(string[] args) {
out.in in = new out.in();
in.print();
}
}
【接口】
1 定义在接口中的方法默认是public的。定义在接口中的域或是类默认是public及static的。
【容器】
1 容器保存的是对象的引用。
【并发】
1 构造方法不需要同步化,因为它只可能发生在一个线程里,在构造方法返回值前没有其他线程可以使用该对象。
2 一个子类可以置换掉父类的同步方法,使它同步或不同步.这就是说,子类的方法不继承其父类的方法的特性.父类的方法不改变,如果明显的调用父类的同步方法,那么这么这个方法将是同步调用的.
【math类】
double floor(double a)
向下取整,返回结果
double ceil(double a)
向上取整,返回结果>=参数
int round(float a) 相当于(int)math.floor(a + 0.5f)
long round(double a) 相当于(long)math.floor(a + 0.5d),
======================================================
在最后,我邀请大家参加新浪APP,就是新浪免费送大家的一个空间,支持PHP+MySql,免费二级域名,免费域名绑定 这个是我邀请的地址,您通过这个链接注册即为我的好友,并获赠云豆500个,价值5元哦!短网址是http://t.cn/SXOiLh我创建的小站每天访客已经达到2000+了,每天挂广告赚50+元哦,呵呵,饭钱不愁了,\(^o^)/