成员函数的定义(请问什么是成员函数的定义)

2024-07-18 11:33:26 12

成员函数的定义(请问什么是成员函数的定义)

本文目录

请问什么是成员函数的定义

成员函数相当于C或C++中的函数。你应该用如下的方式说明一个成员函数:Type name (Parameter)//function body注意:每一个成员函数必须返回一个值或声明返回为空(void)。它返回类型的说明告诉编译器它将返回什么类型的值。在某些情况下,成员函数需要表示它是否成功的完成了它的工作,此时返回类型通常为布尔型的。参数表是用逗号分开的一组变量,它将为成员函数提供所需信息。 下面例子中定义了一个成员函数。通过它,你的矩形类可以计算自己的面积了:int getArea(int w,int h){ int a; a=w*h; return a;} 另外,矩形还需要对自己进行描绘,因此它需要成员函数drawRect(),此时,你的矩形类的定义将如下所示: public class DrwRect { public static void main(String args) { class Rectangle { int width,height,area; public Rectangle(int w,int h) { width=w; height=h; area=getArea(w,h); } protected int getArea(int w,int h) { int a; a=w*h; return a; } public void drawRect() { int i,j; for(i=width;i》0;i--) System.out.print("#"); System.out.print("") ; for(i=height-2;i》0;i--) System.out.print("#"); for(j=width-2;i》0;j--) System.out.print(""); System.out.print("#"); for(i=width;i》0;i--) System.out.print("#"); System.out.print(""); } } //Rectangle int w=Integer.valueOf(args).intValue(); int h=Integer.valueOf(args).intValue(); Rectangle myrect=new Rectangle(w,h); myrect.drawRect(); } } 上例中最后一个“#”号后面还有一个System.out.print("")这是由于这个成员函数在上一行没有结束而且缓冲区没有溢出时将不把输出结果写屏。若你使用print成员函数,却没有得到输出,这时仔细确认一下你是否以""来结束你的输出流。2:不同类型的成员函数 在上例的成员函数声明中你需要注意两点:getArea()定义为private型,drawRect()定义为public型。public型意味着任何类都可以调用它。private型,它只能被所声明的类内部调用。这些说明类型同样适用于数据变量。 若有人想改变一个私有变量,通常要引用下面的成员函数:public void setWidth(int w){ width=w;} 注意:在Java中,protected只是作为关键字出现,而没有相应的功能。3:成员函数的重载 假如你必须在不同情况下发送不同的信息给同一个成员函数的话,该怎么办呢?你可以通过对此成员函数说明多个版本(version)的方法来实现重载。重载的本质是创建了一个新的成员函数:你只需给它一个不同的参数列表(parameterlist),如下例所示:void get Area(int w,int h);void get Area(float w,float h); 在第二种情况下,成员函数get Area()接受两个浮点变量作为它的参数,编译器根据调用时的不同参数来决定该调用哪一种成员函数,假如你把两个整数提供给成员函数,你就调用第一个成员函数;假如你把两个浮点数提供给成员函数,第二个成员函数就被调用。4:静态成员 除了public、private和protected以外,你还可以把成员说明为static(静态)。static修饰符表明一个变量或成员函数对所有类的实例都是相同的,你也许想使用一个所有Rectangle类都可以使用的变量,来说明该类的版本(version),假如你把它说明成一个static,那么该变量将对该类的所有实例都是一样的,如:static int version=1; 静态成员函数和静态变量的优点就在于他们能在没有创建类的任何一个实例的情况下被引用,引用时在“.”域前,可直接使用类名而无须使用对象名。例如,drawRect成员函数使用了System.out.println成员函数,但实际上你却未曾创建一个某个System类的对象,这正是因为out是System类的一个静态变量,所以你可以直接使用这个成员函数而无须定义一个System对象。5:构造和析构成员函数 类有一个特殊的成员函数叫做构造成员函数,它通常用于初始化类的数据成员。在创建对象时,会自动调用类的构造成员函数。Java中的构造成员函数必须与该类具有相同的名字,另外,构造成员函数一般都应用public类型来说明,这样才能在程序任意的位置创建类的实例--对象。 下面是一个Rectangle类的构造成员函数,它带有两个参数,分别表示矩形的长和宽: public Rectangle(int w,int h) { width=w; height=h; area=getArea(w,h); } 除了构造成员函数以外,类还提供了析构成员函数,当对象被从内存中删除时,该成员函数将会被自动调用。通常,在析构成员函数内,你可以填写用来回收对象内部的动态空间的代码。

描述类的成员函数

描述类的成员函数如下:

类的成员函数是其定义或原型在类定义内部的函数,他们可以处理本类的任何对象,有权访问本类对象的所有成员。该函数拥有与数据成员相同的访问特性——public,因为某个访问属性后面声明的每个类成员都将拥有该属性,直到类定义内指定另一个访问属性为止。

在成员函数内访问类成员时,不需要以任何方式限定这些成员的名称。未限定的成员名自动引用执行该成员函数时当前对象的成员。只要写出被处理对象的名称,后跟句点和成员函数,调用的就是该对象的成员函数。

注意

CBox对象仍然占用相同的字节数。给类添加成员函数不会影响类对象的大小。显然成员函数必定存储在内存中,但只有一个副本,与创建的类对象数量无关。当sizeof操作符计算对象占用的字节数时,不包括成员函数占用的内存。

以后将学到,向类添加虚函数,这会增加类对象的大小。成员函数中,类数据成员的名称,自动引用调用该函数的具体对象的数据成员,而成员函数只能由本类的具体对象调用,调用方法是使用对象名和直接成员访问操作符。如果不指定对象名就调用成员函数,那么将不能编译程序。

C++ 成员函数定义

Student::Student(int n){ pscore = new int;}Student::~Student(){ delete pscore;}

C++ 成员函数、全局函数、友员函数的区别

在定义类的时候,如果定义了一个public访问级的函数,那么这个函数就是这个类的成员函数,当然在类里也可以定义private访问级的函数,这种函数则只能叫工具函数而不能叫成员函数,因为他仅仅是为类的公共成员函数服务的。通过类的实例并不能访问类的工具函数。全局函数是定义在主函数和任何类定义之外的函数,这种函数在整个程序的任何地方都允许被调用。但过多的全局函数会增加程序的尺寸,使其变得慵忡。因为通过类的实例并不能访问到类的私用数据成员(即private成员),这时如果在类定义之内定义了友元函数,在类的实例中就可以通过友元函数来访问类的私用数据成员。

java中何为成员函数

就是属于类的属性,是类里面的函数,是类的组成部分,和成员变量想对应,只不过成员变量是变量,而成员函数是类所具有的方法~

什么是静态成员函数

静态成员函数的定义与一般成员函数的定义相同,只是在其前面冠以static关键字,其定义格式如下 :class 类名{…static 类型 函数名(形参){   函数体   }…};说明:(1)类的静态成员函数只能访问类的静态数据成员,而不能访问类中的普通函数成员(非静态数据成 员),因为普通数据成员只有类的对象存在时才有意义。(2)静态成员函数与类相联系,而不与类的对象相联系,所以,在类的外部调用类中的公有静态成员 函数,必须在其左面加上“类名::”,而不是通过对象名调用公有静态成员函数。在类的外 部不能调用类中的私有静态成员函数。

成员函数的定义(请问什么是成员函数的定义)

本文编辑:admin

更多文章:


数据分析系统网页模板(数据分析|私域运营&纯干货篇)

数据分析系统网页模板(数据分析|私域运营&纯干货篇)

各位老铁们,大家好,今天由我来为大家分享数据分析系统网页模板,以及数据分析|私域运营&纯干货篇的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收藏下本站,您的支持是我们最大的动力,谢谢大家了哈,下面我们开始吧!本文目

2024年7月14日 03:45

加粗html标签(如何在HTML中制作粗体文字)

加粗html标签(如何在HTML中制作粗体文字)

其实加粗html标签的问题并不复杂,但是又很多的朋友都不太了解如何在HTML中制作粗体文字,因此呢,今天小编就来为大家分享加粗html标签的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!本文目录如何在HTML中制作粗体文

2024年9月6日 14:55

excel自动填充连续数字(excel 怎么自动升序填充数字, 比如一列向下填成1 2 3 4 5)

excel自动填充连续数字(excel 怎么自动升序填充数字, 比如一列向下填成1 2 3 4 5)

本文目录excel 怎么自动升序填充数字, 比如一列向下填成1 2 3 4 5excel按顺序自动填充数字EXCEL表格中如何实现自动填充数字_Excel中实现数字自动填充功能的操作方法excel如何自动填充连续数字excel怎么自动填充连

2024年4月12日 07:35

html长文本输入框(Html的文本框怎样限制录入文本框的字节长度)

html长文本输入框(Html的文本框怎样限制录入文本框的字节长度)

本文目录Html的文本框怎样限制录入文本框的字节长度html中怎么改变输入框的长度如何限制html标签input的长度Html的文本框怎样限制录入文本框的字节长度试试这个: limit.jsview plaincopy to clipboa

2024年7月13日 15:43

security电影(有谁知道这部电影的名字)

security电影(有谁知道这部电影的名字)

本文目录有谁知道这部电影的名字请问各路大神,许冠文,许冠英考驾照这电影叫什么名字安东尼奥.班德拉斯主演过哪些电影(全部)成龙主演的一部电影网上有段视频说80年代学车是什么电影绝地战警上面那个很搞笑的人叫什么名字 那个像大猩猩 他还演过哪

2024年7月22日 07:59

memcache(如何查看memcache的状态)

memcache(如何查看memcache的状态)

本文目录如何查看memcache的状态如何设置 memcache指定IP访问windwos版本的memcache 怎么配置只允许本地访问如何查看memcache的状态如何通过命令行查看memcache当前运命令行下查看memcache的运行

2023年11月3日 23:40

全光网络系统架构图(CDMA的系统网络结构图是什麽,有木有大神给我讲讲结构图,谢谢)

全光网络系统架构图(CDMA的系统网络结构图是什麽,有木有大神给我讲讲结构图,谢谢)

本文目录CDMA的系统网络结构图是什麽,有木有大神给我讲讲结构图,谢谢电信的光纤网络结构用visio制作网络拓扑结构图计算机网络的组成和体系结构光纤接入网的拓扑结构CDMA的系统网络结构图是什麽,有木有大神给我讲讲结构图,谢谢 您好,首先感

2024年5月16日 11:18

plsqldeveloper使用教程(怎么使用plsql developer)

plsqldeveloper使用教程(怎么使用plsql developer)

本文目录怎么使用plsql developerplsql developer怎么用plsql developer的使用方法怎么使用plsql developer先在电脑安装好oracle,让它可以运行。然后再安装plsql develope

2024年5月15日 10:55

手机修图特效软件(手机修图软件排行榜)

手机修图特效软件(手机修图软件排行榜)

大家好,关于手机修图特效软件很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于手机修图软件排行榜的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,希望对各位有所帮助!本文目录手机修图软

2024年7月22日 17:30

安装fedora(如何从硬盘安装Fedora 17)

安装fedora(如何从硬盘安装Fedora 17)

本文目录如何从硬盘安装Fedora 17我想用u盘将fedora14桌面版安装在我的移动硬盘里,不知道该咋办,小白求教怎样在WIN7下用U盘安装fedora 21我想装一个fedora 14 求下载什么(比如iso镜像之类的),具体步骤,谢

2024年7月21日 17:43

java多线程解决死锁几种方法(Java多线程问题及处理(笔记))

java多线程解决死锁几种方法(Java多线程问题及处理(笔记))

“java多线程解决死锁几种方法”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看java多线程解决死锁几种方法(Java多线程问题及处理(笔记))!本文目录Java多线程问题及处理(笔记)JAVA中如何去避免多线程产生的死锁

2024年9月7日 08:15

hbase环境搭建(以下哪些场景比较适合hbase)

hbase环境搭建(以下哪些场景比较适合hbase)

“hbase环境搭建”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看hbase环境搭建(以下哪些场景比较适合hbase)!本文目录以下哪些场景比较适合hbaseHadoop大数据平台搭建实训目的意义HBase数据库是通过(o

2024年8月21日 19:00

汉语编程编译器(中文编程工具有哪些介绍下)

汉语编程编译器(中文编程工具有哪些介绍下)

本文目录中文编程工具有哪些介绍下易语言就是汉语编程吗易语言汉语编程环境是用什么工具开发的汉语编程到底是什么东西啊中文编程工具有哪些介绍下目前我知道的只有“易语言”,下面是简介:易语言是一个自主开发,适合国情,不同层次不同专业的人员易学易用的

2024年7月15日 07:26

springmvc面试(MVC面试题:有了stuts的mvc为什么还要spring的mvc)

springmvc面试(MVC面试题:有了stuts的mvc为什么还要spring的mvc)

本文目录MVC面试题:有了stuts的mvc为什么还要spring的mvcSpringMVC面试爱问什么面试 springmvc配置文件怎么配置MVC面试题:有了stuts的mvc为什么还要spring的mvc有了struts mvc可以不

2024年7月24日 11:24

一般网上代写代码多少钱(找熟人跑代码 给多少钱)

一般网上代写代码多少钱(找熟人跑代码 给多少钱)

本文目录找熟人跑代码 给多少钱源代码一行多少钱在淘宝上找人编程花多少钱可靠IT编程一行代码多少钱编一个程序可以要多少钱通常代码多少钱一行健身房小程序源代码开发价格多少开发一个个人小程序需要多少钱淘宝上请人调程序bug一般多少钱找熟人跑代码

2024年7月12日 04:40

美国总统大选2024(特朗普或涉嫌3宗罪,2024年参选总统彻底“凉”了)

美国总统大选2024(特朗普或涉嫌3宗罪,2024年参选总统彻底“凉”了)

其实美国总统大选2024的问题并不复杂,但是又很多的朋友都不太了解特朗普或涉嫌3宗罪,2024年参选总统彻底“凉”了,因此呢,今天小编就来为大家分享美国总统大选2024的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!本文

2024年8月12日 12:45

开源系统仿真软件extendsim(半导体器件仿真软件有哪些)

开源系统仿真软件extendsim(半导体器件仿真软件有哪些)

本文目录半导体器件仿真软件有哪些texgen软件是开源软件吗通信仿真系统有哪些软件及其优点开源集中式仿真引擎有哪些OpenFoam这样的开源软件和Fluent差距在哪无线传感器网络中常用的网络仿真软件平台有交通系统仿真软件 —— SUMO半

2024年3月31日 08:06

matlab简单仿真教程的问题(matlab中simulink仿真的问题)

matlab简单仿真教程的问题(matlab中simulink仿真的问题)

本文目录matlab中simulink仿真的问题怎么用matlab进行仿真啊MATLAB仿真调试问题matlab 模块仿真的问题matlab仿真中遇到的问题matlab仿真是为什么会有这种问题出现matlab仿真出现了问题matlab中si

2024年7月24日 03:52

php目录是什么(php 中 目录函数是什么意思)

php目录是什么(php 中 目录函数是什么意思)

本文目录php 中 目录函数是什么意思php连接数据库文件存放在什么目录下现在大型php程序目录结构一般怎么安排php的目录在哪,怎么升级php版本PHP虚拟目录是什么意思怎么用PHP创建目录和子目录php 中 目录函数是什么意思dir例如

2024年7月2日 00:56

什么叫“教育”?教育是什么什么

什么叫“教育”?教育是什么什么

本文目录什么叫“教育”教育是什么什么教育是什么意思中国教育网教师资格证成绩查询官网教育是什么 怎么理解教育教育的意思教育的意思是什么马士兵教育怎么样他们的p8架构师课程谁了解过吗jr教育是什么什么叫“教育”教育是什么?——一种让人们变得更好

2024年7月4日 06:31

近期文章

be dripping with(be dripping with sth的用法有没有需要注意的地方)
2024-09-29 20:25:12
本站热文

iphone vpn设置(ios设置vpn快捷开关)
2024-07-22 15:01:12 浏览:2334
windows12正式版下载(操作系统Windows Server 2012 R2,在哪能下载到,公司用的)
2024-07-20 17:26:53 浏览:1731
java安装教程(win10如何安装JAVA)
2024-07-19 19:55:49 浏览:1156
client mfc application未响应(每次进cf就提示client MFC Application未响应该怎么办啊!急急急)
2024-07-20 11:15:58 浏览:1153
标签列表

热门搜索