权重域名

已备案域名,老域名交易,高权重域名购买,百度权重域名出售,权重域名买卖,万网已备案老域名注册查询抢注转让,买老域名,二手老域名,鹰潭网站建设

基类的初始化

基类的初始化

现在要创建派生类对象已经不是一个类的事情了,它会牵涉到两个类——基类和派生类,因此要搞清楚它究竟是怎么创建的,就优点难度了。从局外人的角度来看,新类具备了和旧类完全相同的接口,并且还有可能会有一些它自己的方法和数据。但继承并不仅仅是拷贝基类的接口。当你创建一个派生类对象的时候,这个对象里面还有一个基类的子对象。这个子对象同基类自己创建的对象没什么两样。这是从外面看来,这个子对象被包裹在派生类的对象里面。

当然,基类子对象的正确初始化也是非常重要的,而且只有一个办法能保证这一点:调用基类的构造函数来进行初始化,因为只有它才掌握怎样才能正确地进行初始化的信息和权限。Java会让派生类的构造函数自动地调用基类的构造函数。构造行为是从基类向外发展的,所以基类会在派生类的构造函数访问它之前先进行初始化。即便你不创建cartoon()的构造函数,编译器也会为你造一个默认的构造函数,然后再由它去调用基类的构造函数。

初始化与类的装载

初始化与类的装载

在较传统的编程语言中,程序启动的时候都是一次装载所有的东西,然后进行初始化,接下来再开始执行。这些语言必须仔细的控制初始化的过程,这样static数据的初始化才不至于会产生问题。就拿C++为例子,如果一个static数据要依赖另一个static的数据,而它又没有初始化的话,问题就来了。

Java采用了一中新的装载模式,因此没有这种问题。Java的所有东西都是对象,因此很多事情就都变得简单了,这就是一例。编译之后每个类都保存在它自己的文件里。不到需要的时候,这个文件是不会装载的。总之你可以说“类的代码会在它们第一次使用的时候装载”。类的装载通常都发生在第一次创建那个类的对象的时候,但是访问static数据户籍哦static方法的时候也会装载。

«1»