zoukankan      html  css  js  c++  java
  • 构造方法

    类方法中的一类特殊方法:构造方法。

     

    1. 构造方法是当用类生成对象时,系统在生成对象时构造方法会被调用,但并不是构造方法生成了对象。

    2. 构造方法没有返回值。格式为:[    public  方法名。   ] 构造方法的方法名与类名相同。

    3. 构造方法是在对象生成的过程中自动调用,不可能利用指令去调用。

    4. 在一个对象的生成周期中构造方法只用一次,一旦这个对象生成,那么这个构造方法失效  (这方面可以写入一个生成类时,运行一次的功能的应用)

    5. 构造方法可以自己构造,包括有参和无参都可以,如果我们没写一个构造方法,那么系统会自动提供一个为空的构造方法,如果写了一个有参的构造方法,可以不用写无参构造方法

     

    用类来生成对象的语句:

    Student  s=new Student()

    第一个Student表示这是用Student类进行定义。“Student()”表示调用Students类的无参数的构造方法。public Students(){ }这形式的无参方法,如果()

    中有参数,则系统构造对象的过程中调用有参的方法。例Student  s=new Student(sdk)  则是调用Students(sdk)的有参方法,public Students(sdk){构造方法代码} 。

     

    此时s称为一个对象变量。Student  s的存储区域存放的是地址:一个对象在硬盘上占有一个连续地址,首地址赋予s空间。s称为对象Student的引用。(一个名叫s的屋子占用了内存世界的一地方)

    注意:

    在对象变量中存放的是引用(地址);在简单变量中存放的是数值。

     

    可以构造多个构造方法,但多个构造方法的参数表一定不同,参数顺序不同即属于不同的构造方法:

     public student(string name,int a){ } 

    public student(int a,string name){ } 

    为两个不同的构造方法。

     

     代码运用:

     

     1 class RectConstructor{//这里是装载乘除方法的类,下面是代值再运行
     2 double length;
     3 double width;
     4 double area(){
     5 return length*width;
     6 }
     7 RectConstructor(double width,double length){//带参数的构造方法
     8 this.length=length;//等号右面的length(这个length又是下面的new RectConstructor(10,20);在建立有参函数时给赋值上长10数值)赋值给this.length(                         字面意思,这个类的长度这个类的length,字面意思,这个类)
     9 this.width=width;//构造方法没有返回值,所以不能直接写return length*width;运算结果返回,但可以赋值,和打印。
    10 }
    11 }
    12 public class RectDemo{
    13 public static void main(String args[]) {   //这一句是程序的入口,有这句就代表代码从这里开始,上面的不会运行,但下面可以调用上面的代码运行。
    14 RectConstructor rect1=new RectConstructor(10,20);
    15 RectConstructor rect2=new RectConstructor(3,6);
    16 double ar;
    17 ar=rect1.area();
    18 System.out.println("第一个长方形的面积是"+ar);
    19 ar=rect2.area();
    20 System.out.println("第二个长方形的面积是"+ar);
    21 }
    22 }
    23 控制台输出结果为:
    24 第一个长方形的面积是200
    25 第二个长方形的面积是18

     

     

     

  • 相关阅读:
    Linux常用命令
    cookie机制、session机制
    http状态码、错误分析
    安装“Microsoft SQL Server 2014 Management Objects”时报错"Error Writing to file: Microsoft.SqlServer.XEvent.Linq.dll."
    Installshield build all installer in development computer
    C++使用RabbitMQ类库做客户端与RabbitMQ Server通讯,生成C++可调用的rabbimq.*.dll的过程
    由hibernate配置cascade而导致的软件错误,并分析解决此问题的过程
    由hibernate配置inverse="true"而导致的软件错误,并分析解决此问题的过程
    JVM原理解析
    Add lombok to IntelliJ IDEA
  • 原文地址:https://www.cnblogs.com/liyihome/p/3669285.html
Copyright © 2011-2022 走看看