`

java基础学习笔记

    博客分类:
  • j2se
阅读更多

1."=="和equals方法究竟有什么区别:

package com.cz;

public class hello {
	public static void main(String args[]) {
		String a=new String("foo");
		String b=new String("foo");

		System.out.println(a==b);
		System.out.println(a.equals(b));
	}
}

 控制台输出:

false
true

 

2.if(username.equals("haha"){} //这里应该写成这样 "haha".equals(username) 可以避免空指针异常

 

3.抽象类 与普通类的唯一区别就是不能创建实例对象和允许有 abstract 方法。

 

4.抽象类和接口 的比较:

接口,只是定义方法名。子类去实现具体细节。

抽象类的抽象方法与接口方法一样要子类去实现,但抽象类可以有具体的方法体。

比如做一个画面的功能。

定义一下画图的接口,一个画的方法。

这样,你可以有子类画矩形,画圆。。。。但这样,你不能做一些共通的功能。

如果是一个抽象类就好一些。

定义一个画图的抽象,一个抽象的画的方法。一个清除的友好方法。

这样你的子类都可以调清除方法。来清除画过的东西。

 

5.java生成当前时间的时间戳
System.out.println(new java.text.SimpleDateFormat("yyyyMMddHHmmss").format(new Date()));

 

6.整型
64位的int类型,,就是我们平时说的long
32位的int类型,就是我们平时说的int
16位的int类型 ,就是我们平时说的shot

 

7.String和StringBuffer的区别
String:
是对象不是原始类型.
为不可变对象,一旦被创建,就不能修改它的值.
对于已经存在的String对象的修改都是重新创建一个新的对象,然后把新的值保存进去.
String 是final类,即不能被继承.

StringBuffer:
是一个可变对象,当对他进行修改的时候不会像String那样重新建立对象
它只能通过构造函数来建立,
StringBuffer sb = new StringBuffer();
note:不能通过付值符号对他进行付值.
sb = "welcome to here!";//error
对象被建立以后,在内存中就会分配内存空间,并初始保存一个null.向StringBuffer
中付值的时候可以通过它的append方法.
sb.append("hello");
字符串连接操作中StringBuffer的效率要比String高.

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics