一、类的方法之构造方法
构造方法与普通方法的区别
用途 返回值 方法名
构 构造方法主要 不写数据类型 必须是类名
造 用于实例化对象,
方 可同时对对象的
法 属性进行初始化。
普 普通方法则主要 要标明数据类型 可以自己命名
通 是设置对象的行
方 为方法
法
**代码举例:
构造方法
语法格式:
public 类名(数据类型 形参名,...){
//方法体
}
例:
public Student(String n){
name = n;
}
普通方法
语法格式
public 返回值数据类型 方法名(数据类型 形参名,...){
//方法体
}
例:
public void study(){
System.out.println(name+"学习中,学分是"+score);//输出信息
}
**为什么我们可以做类似于
Student stu = new Student()的对象实例化?
注意到加了圆括号的都是方法,属性不行,类也不行,作为类的Student是没有资格加上()的,在此处Student()其实已经是一个方法了,Java默认给类提供一个构造方法,注意是构造方法,并且不带参数,但是若定义了与之完全相同的构造方法,如Student(){//方法体},则默认的被覆盖。
二、方法重载
1.条件
方法重载与参数有很大关系。除了方法名字必须完全相同外,所带参数的个数,类型,顺序,至少有一个是不同的。
2.如何调用
在调用方法时,系统自动查找与调用的方法参数一致的方法。
3.使用方法重载的情况
根据定义,使用方法重载的情况必是原有方法不能满足新的对象的使用需求,比如,同是手机,有的可以触屏,有的不可以,有的有键盘,有的没有,有的是智能机,有的不是……
往往是对象的“参数”个数,类型等等发生了改变,所有的一切可以还原到生活中,这就是面向对象的编程的优点,易于理解。
三、this关键字
this关键字的作用目前我所知……只有两种,第一,当参数名与对象的属性名相同时,在对象属性名前加this. 相当于用于标记和区分,this.代表当前,要注意在不同的方法中使用代表什么,举一个例子
public Student(String name){
this.name = name;
}
public Teacher(String name){
this.name = name;
}
两个this.name分别是Student跟Teacher类的属性
四、值传递
类似于C语言中的传值~我发现自己好喜欢把java跟C比较。。。举例:stu.setName("李四");直接把"李四"这个字符串传了进去。
它既可以用于普通方法,又可以用于构造方法
五、引用传递
类似于C中的传址~在此之前,要先搞懂对于Student stu = new Student();之后,stu中间到底存了些什么
插入上课时的笔记:
内存包括栈和堆,定义了Student stu;则在栈中开辟了内存空间存储,用于存储stu,并对她的初始值赋null;用new Student(),则在堆中开辟了一个空间,用来存储这个类中的方法跟属性,其中它的大小取决于类的大小。接着,构造方法会提供类的首地址,将类的首地址赋给了stu,其实stu存的是首地址~so,对stu进行两次Student stu = new Student();赋值,看起来赋的是相同的值,其实是不同的~
所以,相同类型的变量如stu1,stu2,stu3。。。。。。互相赋值,传递的是变量所存的地址,举例:
stu = new Student();
stu.setName("金");
Student stu2 = new Student();
stu2.setName("木");
Student stu3 = new Student("水");
stu3.setName("火");
stu2 = stu;
stu = stu3;
stu3 = stu;
}
输出结果:
火
金
火
分析:
stu2 = stu;(1)
stu = stu3;(2)
stu3 = stu;(3)
这一段语句,(1)后stu2存的已经是stu的地址了,(2)后stu存的就是stu3的地址了,(3)后stu3是stu的地址,但是
stu又已经是stu3原始的,所以,最终结果如上。
六、一些要注意的小点
1.参数名和属性名相同时,会默认使用离方法最近的参数名用this来区分
2.this("aaa")代表调用这个类中的具有一个字符串的参数的方法,如不不含有这个方法就会报错
3.GC:销毁释放内存空间
分享到:
相关推荐
5. 季度和半年的划分:一年分为四个季度,分别是第一季度(1月-3月)、第二季度(4月-6月)、第三季度(7月-9月)和第四季度(10月-12月)。同时,一年还可以分为上半年(1月-6月)和下半年(7月-12月)。 6. 日期...
课程中还提到了一个帮助记忆大月的方法,即“大月歌诀法”:12月一三五七八十腊,这句歌词表示1月、3月、5月、7月、8月、10月和12月是大月,而“七八两月挨着数,七月以前找单数,七月以后找双数”,指的是7月之前的...
《看日历》是新北师大版三年级上册数学中的第一节课,主要涉及时间单位年、月、日之间的关系,以及如何判断平年和闰年。本课旨在帮助学生建立时间观念,培养他们对科学的兴趣。 课程的核心知识点包括: 1. 时间...
1. **母亲节日期**:母亲节是在每年的五月的第二个星期日。这个日期是全球许多国家庆祝母亲节的共同时间,让学生们了解这一国际性的节日。 2. **节日活动**:PPT中提到了在母亲节可以做的事情,包括帮助母亲做家务...
本资料“第一节课-Excel函数词典(483个函数说明)”提供了对Excel中几乎全部核心函数的详尽解释,旨在提升用户在电子表格中的工作效率。这份文件包含了483个不同的函数,涵盖了统计、财务、数学、文本、日期和时间...
第三届蓝桥杯初赛C/C++高职组_2012年4月7日 1-10题全,不用处到,这是TXT文件,里面是个人发的两个链接.
1. **元旦**:“2019-01-01”,这天标记为普通工作日,并备注“元旦调休第3天”。 2. **春节**:从“2019-02-04”到“2019-02-10”,这七天均标记为春节假期,并分别备注了春节假期的天数。 3. **清明节**:从“2019...
5. **假期天数**:例如学校7月5日放假,9月1日开学,假期总天数为(9月1日-7月5日)的天数,注意跨越了7月和8月两个整月,再加上9月1日,减去7月5日当天,计算得到具体天数。 6. **活动时间**:课外小组15:20开始,...
本节课主要涉及的是三年级数学下册第五单元的内容——走进天文馆,主题是“年、月、日”,这是青岛版小学数学教材的一部分。本课时的主要目的是帮助学生理解时间单位年、月、日的概念及其相互关系,通过观察、猜想和...
压缩包里有2个文件,用于计算两个日期相差的工作日天数(排除周末和法定节假日): 1、excel表为2023年日历数据,并且备注工作日、周末,调休、节假日类型,可导入数据库。...3、已重新更正5月6日调休。
《三年级下册数学课件-第6单元年、月、日第1课时人教新课标(2014秋)》 本课件主要针对三年级下学期的学生,旨在帮助他们理解和掌握时间单位年、月、日的概念,以及它们之间的相互关系。课程围绕以下几个核心知识...
本节课的主题是九年级历史下册的“第三学习主题 第二课:战争的扩大和转折”,主要涉及第二次世界大战的关键阶段。以下是详细的知识点解析: 1. **德国进攻苏联**:1941年6月22日,德国违背《苏德互不侵犯条约》,...
【每日个人工作总结范文】XX特别行政区咨询工程师个人工作总结每日一讲(7月20日)主要涉及了工程咨询、风险管理、财务管理、项目决策等多个领域的知识。以下是这些知识点的详细解析: 1. **风险的相对性**:在第一道...
从所提供的文件内容来看,这份文档是一份小学三年级语文练习题,主要针对的是2019部编教材下册第9课《古诗三首》的复习和理解。《古诗三首》涉及的三首古诗分别是《元日》、《清明》和《九月九日忆山东兄弟》。以下...
对于更复杂的需求,可以使用第三方库如`Joda-Time`或`ThreeTen-Backport`。 2. **计算工作日**:计算两个日期之间的工作日数量,首先需要排除周末(周六和周日)。这可以通过判断日期的星期几来实现,例如使用`...
这个方法需要考虑到节假日和周末,如果遇到节假日则跳过,直到找到第n个工作日。实现时,可能会使用Java的`java.time`包,尤其是`LocalDate`类,来进行日期的加减操作。 在实际应用中,开发者可以这样使用这个工具...
开学第一课通常是在每个学期初,特别是新学年的第一节课上进行的,旨在对学生进行思想教育,强化爱国主义情感,培养良好的行为习惯,加强安全教育等方面。以下为本文件中所涉及的重要知识点: 1. 活动目的: 开学...
【知识点详解】 1. 月相的成因:月相是由太阳、地球和月球三者的相对位置变化造成...以上是对月相成因、变化规律、相关诗词及天文现象的详细解释,涵盖了七年级科学下册第4章地球与宇宙第4节月相作业设计中的知识点。
本节课主要涉及的是初中地理七年级上册第三章关于气温变化与分布的知识。以下是详细内容: 1. **气温的观测**:气温通常使用摄氏温标(℃)来衡量,一天中需要观测四次气温,即2时、8时、14时和20时。 2. **气温的...
- 3日:みっか (第三天) - ...以此类推,直到31日:さんじゅういちにち (第三十一天) - 何日:なんにち (多少天) - 月份读法与日期类似,如: - 一月:いちがつ (一月) - 二月:にがつ (二月) - ...直到十二...