第二章 一切都是对象

来源:互联网 发布:c语言之父写的书 编辑:程序博客网 时间:2024/05/16 09:49

1、String s;    //这里只是创建了一个引用,但不是对象

String s = "abdc"; //这里用到了一个java的特性:字符串可以用带引号的文本初始化。

 

2、一旦创建了一个引用,就希望它和一个新的对象相关联。通常用new操作符来实现,new关键字的意思是“给我一个新对象”

所以上面的例子可以写为:

String s = new String(“abdc”);

它不仅表示“给我一个新的字符串”,而且通过提供一个初始化字符串

 

3、程序执行过程

 

4、static关键字

 当声明一个事物是static时,就意味着这个事物不会与包含它的类的任何对象实例关联在一起,也就是说:即使没有创建对象,也能够调用这个方法,有两种情形如下:

    1)、只想为某特定域分配单一存储空间,而不去考虑究竟要创建多少对象,甚至根本就不创建对象

    2)、希望某个方法不与包含它的任何对象关联在一起

 在static方法的内部不能调用非静态方法,在非static方法中可以调用static方法的原因:

        由于static是运行前绑定,而非static方法是动态绑定的,因此,如果在static方法中调用非static方法,则会出现在运行前的绑定过程中无法有效的绑定,所以不能在static中调用非static方法