zoukankan      html  css  js  c++  java
  • java对象和构造方法的区别

      例如:Test是一个类,那么 Test t = new Test();这个语句叫做类的实例化,即t是Test类的一个实例,这个t就是一个Test类型的对象,在这个实例化过程中,也就是new Test();系统会自动调用Test类中的构造方法,如果你在定义Test类的时候写了无参构造方法Test(),那么就调用这个方法,如果你没写构造方法系统会默认有一个无参构造方法,如果你写了有参构造,那么new Test();会报错,必须写成:new Test(参数);构造方法的作用就是规定在创建这个实例的时候想做的事,比如你可以在这里给Test类的私有变量赋值..

    而JAVA中普通的方法和构造方法有什么区别
      1、方法有返回类型,方法名小写,不能和类名相同;构造方法没有返回类型,void也不行,名与类名相同。


      2、构造方法是初始化对象的重要途径,所以就算你给一个类没有定义构造方法,方法在这个类的加载得时候,会自动提供一个没有参数的构造方法。所以,常见得 Student s=new Student();那么,s这个实例,是通过构造方法初始化的;而普通方法不行


      3、他们运行顺序不同。一个类在初始化的时候,例如People是Student的父类,有构造方法 public PeoPle(){}那么,当实例化Student p=new Student()得时候,父类的构造方法会隐式执行(你可自己敲代码尝试,父类构造方法中写个输出语句:例如System.out.println("父类构造方法"))。你会发现,没有调用任何父类,也没有实例化父类,但是构造方法却执行了。

       4、方法仅仅是类成员,构造方法也是类成员,但是,构造方法有对类属性得初始化的功能。所以,常见到 public PeoPle(String name){this.name=name}或者 public PeoPle(){name="wangsan",age=14},完成了对People类属性name或者age的初始化

  • 相关阅读:
    SQL中 decode()函数简介
    php中foreach()的用法
    swfuploadphp上传说明
    未知,等知道什么以后再改
    php上传文件处理
    smarty中的section和foreach
    asp.net 异常:"DataBinding: 'System.Data.DataRowView'
    自定义MembershipProvider配合Asp.net 2.0 Login控件(转的,忘记哪里的了)
    地理信息中各种坐标系区别和转换总结
    asp.net异常DataRowView The type or namespace name 'DataRowView' could not be found
  • 原文地址:https://www.cnblogs.com/jingongxia/p/9092717.html
Copyright © 2011-2022 走看看