java基础七预定义类

来源:互联网 发布:软件服务器加防御 编辑:程序博客网 时间:2024/06/06 10:59

要使用对象,就要先构造对象,并指定其初始状态,然后对对象应用方法
在java程序设计语言中,使用构造器(constructor)构造新实例,构造器是一种特殊的方法,用来构造并初始化对象。

补充:可能大家会很奇怪,为什么java使用类描述时间,而不是像其他语言那样使用一个内置的函数呢?在vb中就有一个内置的类型,我们可以采用 月/日/年 格式的指定日期,从表面上看这很方便,我们不用再去设计类了,但是, 实际上,它的适应性比较差,有的地方会用 日/月/年 来表示。如果处理不好,语言就会陷入混乱,很是麻烦,但是我们使用类,就把设计的任务交给了类库的设计者,如果类设计的不完善,我们其他的开发人员也很容易的去编写自己的类,以增强或替代系统提供的类。这样灵活性就大大的加强啦

构造器的名字应该与类同名,因此Date类的构造器名为Date,要想构造一个Date对象,需要在构造器前面加上new操作符,如下所示:
new Date()
这个表达式构造了一个新对象。这个对象初始化为当前的日期和时间。
如果需要的话,也可以将这个对象传递给一个方法,比如输出:
System.out.println(new Date());
相反的也可以将一个方法应用于刚刚创建的对象上。Date类中有一个toString方法,这个方法返回日期的字符串描述
String s=new Date().toString();
在这两个例子汇总,构造对象仅使用一次。通常,希望构造的对象可以多次使用,因此需要将对象存放在一个变量中,这就是新构造的对象变量date
Date date=new Date();

这里写图片描述

在对象和对象变量之间存在着一个重要的区别。
Date deadline;
定义了一个对象变量deadline,他可以引用Date类型的对象。但是一定要意识到:变量deadline不是一个对象,实际上也没有引用对象。此时,不能将任何Date方法应用于这个变量上。语句 s=deadline.toString(); 将产生编译错误
必须首先初始化变量deadline,有两种方法,可以用心构造的对象初始化这个变量
deadline=new Date();
另一个就是也让这个变量引用已存在的对象:
deadline=date;
现在这两个变量引用同一个对象、
一定要认识到:
一个对象变量并没与实际包含一个对象,而仅仅是引用一个对象。
在java中,任何对象变量的值都是对存储在另一个地方的一个对象的引用。new操作符的返回值也是一个引用。
所有的java对象都存储在堆中,当一个对象包含另一个对象变量时,这个变量依然包含着指向另一个堆对象的指针

0 0
原创粉丝点击