博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
构造方法
阅读量:4661 次
发布时间:2019-06-09

本文共 1700 字,大约阅读时间需要 5 分钟。

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

 

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 第一个长方形的面积是20025 第二个长方形的面积是18

 

 

 

 

转载于:https://www.cnblogs.com/liyihome/p/3669285.html

你可能感兴趣的文章
BZOJ 2037 区间DP
查看>>
hihocoder1415 重复旋律3
查看>>
STL-queue和循环队列基本操作的实现
查看>>
Python 字符串常用方法
查看>>
ant中build.xml文件解释
查看>>
自动化测试
查看>>
Spring MVC 拦截器
查看>>
android:ToolBar详解
查看>>
Android Spinner的五个部分
查看>>
研究Mysql优化得出一些建设性的方案
查看>>
POJ 2378 Tree Cutting (树的重心,微变形)
查看>>
SQL联查-转载
查看>>
Linux ssldump命令
查看>>
BZOJ4350: 括号序列再战猪猪侠【区间DP】
查看>>
silverlight Image Source URI : 一个反斜杠引发的血案
查看>>
《剑指offer》二叉树的深度
查看>>
【SQL Server 学习系列】-- 获取字符串中出现某字符的次数及字符某次出现的下标...
查看>>
树状数组2模板 Luogu 3368
查看>>
iOS App的状态
查看>>
C# 实现escape功能
查看>>