`
wojiaolongyinong
  • 浏览: 73083 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

我来讲述构造函数、方法重载、引用传递值传递

    博客分类:
  • Java
阅读更多

1.       构造函数:

构造函数亦可以称为构造器或是构造方法,用来创建对象。如下:

public Student(){}

public Student(String k){
	this.kemu = k;
}

 

 

以上两种皆为构造函数,前者是默认的构造函数,可以在类中不进行编写,程序默认,但是如果重载了构造函数,默认构造函数不存在,要使用的话需要重新编写。后者即就是重载的构造函数,因为与前者相比存在参数,而在构造函数中传入参数的好处就是可以初始化对象的某些属性,例如后者,直接可以是对象的属性kemu赋值为传入参数k

 

构造函数有以下特点:

        1 构造函数不写返回类型;

        2 构造函数名必须与类名相同;

        3 构造函数在创建对象时调用。

先看如下代码:

public void study(){
         /*函数内容*/
}

public void study(String n){
        /*函数内容*/
}

 

在上面代码段中,两个函数方法的方法名相同,参数不同,前者没有参数,后者有字符串类型的参数。方法重载就是方法名相同,但是参数不同(参数个数、参数类型、参数顺序),就称为方法重载。只需要看方法名与参数,而与函数的返回类型或是执行内容均无关系。

 

 引用传递值传递:

Java中有两种数据类型,类类型和基本类型。而上面所说的引用传递既就是针对类类型,而值传递就是针对基本类型。看如下代码段:

Student stu = new Student();

Student stu;
stu = new Student();

 

 

如上第一行代码是下面两行代码的简写。分析下面两行代码,先是声明变量类型为Studentstu,然后执行Student()构造函数创建对象,将对象的内存地址存到声明的变量stu中。所以在使用stu时,实际上是在内存地址上做文章,将对象的引用进行传递。

 

而如下代码段:

int number = 5;

是基本数据类型的的声明和赋值,在使用是直接使用的是变量number中的实体5

所以从上面可以看出引用传递与值传递的区别。

分享到:
评论
1 楼 sorriest-siben 2013-05-19  
基础真的很重要啊  学数学的  厉害

相关推荐

    [Visual.C++.2010入门经典(第5版)].Ivor.Horton.part1

    7.11.3 定义引用类类型的复制构造函数 346 7.11.4 类属性 346 7.11.5 initonly字段 358 7.11.6 静态构造函数 360 7.12 小结 360 7.13 练习 360 7.14 本章主要内容 361 第8章 深入理解类 363 8.1 类析构函数 363 ...

    Visual C# 2010程序设计教程(教程PPT+源代码)

    5.3 构造函数与析构函数 5.3.1 构造函数 5.3.2 析构函数 5.4 本章小结 5.5 上机练习 5.6 习题 第6章 域、属性与事件 6.1 域 6.1.1 域的初始化 6.1.2 只读域与readonly关键字 6.2 属性 6.2.1 属性的声明 6.2.2 属性...

    Visual C++ 2010入门经典(第5版)--源代码及课后练习答案

    7.11.3 定义引用类类型的复制构造函数 346 7.11.4 类属性 346 7.11.5 initonly字段 358 7.11.6 静态构造函数 360 7.12 小结 360 7.13 练习 360 7.14 本章主要内容 361 第8章 深入理解类 363 8.1 类析构函数 ...

    Visual C++ 2005入门经典--源代码及课后练习答案

    7.4.4 在构造函数中使用初始化列表 320 7.5 类的私有成员 320 7.5.1 访问私有类成员 323 7.5.2 类的友元函数 324 7.5.3 默认复制构造函数 326 7.6 this指针 328 7.7 类的const对象 331 7.7.1 类的...

    VC学习大纲 VC学习讲义

    C++经典语法与应用,类的编写与应用,构造与析构函数,函数的重载,类的继承,函数覆盖,基类与派生类的构造函数、析构函数先后调用顺序,如何在派生类构造函数中向基类的构造函数传递参数,this成员变量,类型转换...

    C++MFC教程

    在MFC中对消息的处理利用了消息映射的方法,该方法的基础是宏定义实现,通过宏定义将消息分派到不同的成员函数进行处理。下面简单讲述一下这种方法的实现方法: 代码如下 BEGIN_MESSAGE_MAP(CMainFrame, CFrameWnd...

    Visual.C#2010从入门到精通

    3.3.3 重载构造函数 40 3.3.4 析构函数 41 3.4 继承 43 3.4.1 继承的概念 43 3.4.2 继承的工作机制 43 3.4.3 公有继承 44 3.4.4 私有继承 46 3.4.5 保护继承 47 3.4.6 多重继承 49 3.5 异常处理 51 3.5.1 异常的概念...

    PT80-NEAT开发指南v1.1

    NEAT 开 发 指南 文档 适用于 PT80 系列 移动数据终端 版本记录 版本号 版本描述 发布日期 V 1.0 初始版本。 2012-04-12 V1.1 修改前三章内容 2012-09-25 目录 第一章 关于本手册.....................................

    美国..现代编译原理C语言描述.高清版

    16.4 静态重载的解决方法 265 推荐阅读 266 习题 266 第17章 数据流分析 269 17.1 流分析使用的中间表示 270 17.2 各种数据流分析 271 17.2.1 到达定值 271 17.2.2 可用表达式 273 17.2.3 到达表达式 274 17.2.4 ...

Global site tag (gtag.js) - Google Analytics