`
zengshaotao
  • 浏览: 787433 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

构造函数的意义

    博客分类:
  • java
 
阅读更多

public class MemeInit {

 public Testm t = new Testm();

 public String var = "fffff";
 
 public MemeInit(){
  System.out.println(" memeinit  construts init ");
 }
 
 void print() {

  System.out.println("memeinit method");
 }

 public static void main(String args[]) {
  MemeInit mi = new MemeInit();
  mi.print();
 }

}

class Testm extends Pare {
 public Testm() {
  System.out.println("child construct init");
 }
}

class Pare {
 static {
  System.out.println("parent static block !");
 }

 public Pare() {
  System.out.println("parent Construct init ");
 }
}
运行结果:

parent static block !
parent Construct init
child construct init
 memeinit  construts init
memeinit method

分析:

程序执行开始时,有MemeInit mi = new MemeInit();
此时,调用了被重载的构造方法,按照一般分析应该先打印memeinit  construts init ,但是实际没有,这就说明,构造函数实际上是jvm初始化一个类实例时的标志,也就是说,jvm看到有这个成员,就会初始化对象实例,而这个过程一般是初始化对象中的其他成员变量。所以很多成员变量就都有了初始值,基本类型看实际,引用类型就是null。在java规范中,一个class是一定有构造函数的,因为没有定义就是默认,定义了当然就有。关于构造函数所代表的标志意义有点类似于spring的aop的pointcut

 

 

分享到:
评论

相关推荐

    构造函数不能声明为虚函数的原因及分析

    构造函数本身就是要初始化实例,那使用虚函数也没有实际意义呀。所以构造函数没有必要是虚函数。虚函数的作用在于通过父类的指针或者引用来调用它的时候能够变成调用子类的那个成员函数。而构造函数是在创建对象时...

    构造函数不能为虚函数的理由

    构造函数本身就是要初始化实例,那使用虚函数也没有实际意义呀。因此,构造函数没有必要是虚函数。虚函数的作用在于通过父类的指针或者引用来调用它的时候能够变成调用子类的那个成员函数,而构造函数是在创建对象时...

    为什么构造函数不能是虚函数

    - 许多编译器能够识别到在构造函数中调用虚函数是没有意义的,并自动采用早期绑定(Early Binding)方式处理这类调用。 - 即使编译器进行了这样的优化,这种调用仍然无法达到预期的效果,因为虚函数的真正效果是支持...

    高中数学构造函数专题.pdf

    很遗憾,提供的文件内容无法生成任何知识点。这部分内容似乎不是具有实际意义的文本,而是由一...构造函数是高中数学教学中的高级内容,对于学生解决高难度数学问题以及未来在理工科专业领域的学习和研究具有重要意义。

    运用导数运算法则构造函数的五种题型.pdf

    总结来说,导数运算法则在解决构造函数相关问题中具有十分重要的作用,通过构造函数并研究其单调性,我们可以解决与导数和不等式相关联的高中数学问题。掌握这些方法和技巧,对于高考数学应试以及日后的高等数学学习...

    C#多态性实例,向基类构造函数传递参数.rar

    3. **参数传递的意义**:向基类构造函数传递参数使得我们可以根据派生类实例化时的具体条件来设置基类的状态。这有助于保持代码的灵活性和可扩展性,因为基类的行为可以根据派生类的特性进行调整。 4. **封装和抽象...

    巧用类String 的构造函数

    ### 巧用类String的构造函数 在C++编程中,自定义字符串类是一个非常典型的应用案例,尤其在深入理解类、对象以及内存管理等方面具有重要意义。本文将围绕一个简单的`String`类来探讨其构造函数及其成员函数的实现...

    构造函数(含答案).pdf

    【知识点详解】 1. 构造函数的基本概念: 构造函数是一种在数学中用于创建新函数的方法,通常在微积分中用于找到满足特定条件的未知...熟练掌握构造函数的技巧,对于理解函数的动态行为和解决实际问题具有重要意义。

    构造函数解导数.pdf

    总的来说,构造函数是解决导数问题的有效策略,它涉及函数的性质、导数的几何意义、单调性、极值和最值等问题,通过巧妙构造,可以化繁为简,使问题变得易于处理。理解和掌握这些构造方法对于理解和解决复杂的数学...

    Java构造函数的相互调用代码示例

    在一个构造函数中,当给传递给它一个参数列表时,它就有了不同的意义。它将直接的调用能够匹配这个参数列表的构造函数。 3. 构造函数的调用规则:构造函数的调用必须排在第一位,否则将会出现编译时错误。并且,只...

    JS中的构造函数详细解析

    这种返回行为的理解对于深刻掌握JavaScript中的构造函数以及面向对象编程具有重要意义。在实际开发中,推荐的做法是构造函数不要返回任何值,或者如果要返回一个新对象,最好使用工厂方法来替代构造函数。 总结来说...

    对C++默认构造函数的一点重要说明

    因此,这样的默认构造函数实际上是没有意义的,编译器不生成也不会影响程序的正确性。 理解默认构造函数的工作原理对编写高效、可靠的C++代码至关重要。例如,如果你需要对所有对象进行某种初始化操作,你应该显式...

    基于JavaScript自定义构造函数的详解说明

    在JavaScript中,构造函数和原型对象是实现对象创建和继承的关键机制。 构造函数是JavaScript中用于创建特定类型的对象的特殊函数。当使用`new`操作符跟一个函数调用时,构造函数会被执行,它的内部`this`关键字会...

    C++私有构造函数的作用

     当我们在程序中声明一个对象时,编译器为调用构造函数(如果有的话),而这个调用将通常是外部的,也是说它不属于class对象本身的调用,假如构造函数是私有的,由于在class外部不允许访问私有成员,所以这将导致...

    Javascript 构造函数,公有,私有特权和静态成员定义方法

    在JavaScript中,构造函数是用来创建特定类型对象的函数。通过构造函数,我们可以定义一个对象的结构,并初始化其状态。构造函数通常用于创建具有相同属性和方法的对象。本文将详细解释JavaScript中构造函数中公有、...

    构造函数解导数综合题.doc

    4. **拆分法构造函数**:对于复杂的不等式证明,可以将原问题拆分为多个易于处理的部分,分别构造函数并分析其性质。例如在证明f(x) = aexln x + bex - 1/x > 1时,拆分为xln x > xe^(-x) - 2e,分别构造g(x) = xln ...

    探究在导数运算中构造函数解不等式.docx

    综上所述,"探究在导数运算中构造函数解不等式"这一主题强调了导数在解决复杂不等式问题中的作用,强调了构造函数的技巧和对导数性质的深刻理解。通过历年高考真题和模拟卷的实例,学生不仅可以提高解题能力,还能...

    C++构造函数抛出异常需要注意的地方

    通常,构造函数应该能够处理所有可能的输入,或者至少在失败时提供有意义的默认行为,而不是直接抛出异常。如果必须抛出异常,应当确保用户能够理解并适当地处理这些异常,以保持程序的健壮性。 总结起来,C++构造...

    定义一个圆类circle,它有一个变量radius(半径)。从键盘输入数据,通过构造函数的参数传递给radius,编程计算并输出圆的的周长和面积。但是,必须确保输入的数据不为复数。

    在这个例子中,我们定义了一个带有参数的构造函数,用于接收用户输入的圆的半径值,并将其赋值给类的成员变量`radius`。 ```java public Circle(double r) { this.radius = r; } ``` ### 3. 输入验证 为了确保...

Global site tag (gtag.js) - Google Analytics