1. 构造方法与普通方法
最近刚刚入手JAVA,刚开始觉得还不错,但到了构造方法这一块,确实令我有点头痛。不过,经过自己的一番努力,现在对构造方法和普通方法也有了一些初步的理解,并且自认为可以比较熟练地进行方法的调用操作。
构造方法和普通方法到底有什么区别呢?我认为其分外在区别与内在区别两部分。首先,外在的话就是形式上不同,构造方法的要求是方法名与类名要完全相同,而普通方法的方法名与类名不能有相同的地方,不然程序在编译过种中就会报错。 同时,构造方法与普通方法还有一个本质的区别,打个比方说,一个生出生,当他刚生下来的时候,他就已经具有了一些能力,具有了一些属性,例如这个人的性别等,而普通方法是这个人后天所得来的一些属性,是通过他自己后天的努力所得来的,比如说他将来可能会成为一位很伟大的科学家,那么他的科学素养就是他自己通过后天的学习与努力得到,而这也就是普通方法的作用。当我们在一个类用对一个对象的行为进行描述时,我们可以采用普通方法,而对他的本质属性进行定义的时候我们可以采用构造方法。下面我们以一下段程序为例:
程序一:
package cn.hdb0116;
//定义一个 学生类
public class Student {
//定义学生的属性
public Student(){
}
public Student(String name, int t){
this.name = name;
}
//设置学生的名字
private String name;
//设置学生名字的方法
public void setName(String name){
this.name = name;
}
//获取学生名字的方法
public String getName(){
return name;
}
//学霸的学习方法
public void study(){
int hour = 15;
System.out.println("学生"+name+"学习了"+hour+"小时,真是学霸啊。");
}
//堕落的人的学习方法
public void study1(){
int gt = 10;
System.out.println("学生"+name+"玩了"+gt+"小时游戏,十分堕落。");
}
}
程序二:
package cn.hdb0116;
import cn.hdb0116.Student;
//创建一个主类
public class Administrator {
//定义入口主函数
public static void main(String args[]){
//实例化一个学生对象
Student stu = new Student("Steve",10);
//学生学习的方法
stu.study();
//实例化一个学生对象
Student stu1 = new Student();
//设置名字
stu1.setName("何定波");
//调用学习方法
stu1.study1();}}
2.方法的重载
以上程序定义的是 一个学生类, 在这里我们对学生的属性使用了构造方法,相比之下我们可以发现,一个类下面可以有多个同名的构造方法,而他们之间的区别主要就是参数的有无,个数,顺序的差别。这个现象我们叫做方法的重载。如果把写程序当作做一件事,那么方法就是解决问题的途径,方法的重载就相当于为我们解决一个问题提供了更多的方法,这样便会使得我们在解决问题的时候变得更加灵活,更加得心应手。举个很简单的例子就比如买火车票,眼下春运快到了,火车票也真的是一票难求。假如铁道部只给我们提供车站售票厅售票的方法,那么车站的人口数目到时候可想而知,然而,现在我们有多种购票方式,去车站买票是最基本的方式,还有电话订票,网上订票,这些无疑为我们的买票提供了方便。而方法的重载也就有类似的功能。
3.this关键字
上面的两段程序中有出现过“this.name = name”的字样,这里面的this我们叫做this关键字,而他的功能就是用来唯一指定变量位置。这和数学中的函数和映射的概念差不多,函数的最基本要求是一个变量只能对应于一个函数值,映射中可以有多 对一,一对一的情况 ,但绝对没有一对多的情况。然而在程序的编写过程中,难免会遇到一个令机器不好区分的地方, 同时为了保证其意义,方便我们日后的检查,校对,我们便不想将其改变,这时候this关键字就像是为我们指明方向的路标,告诉我们下一步该怎么走。当一个在岔路口的时候,我们可以凭借自己的意志去选择一个方向,然而机器没有思维,因此,他所做的每一步都要求我们有明确的指示,而this所充当的功能就是这个。
分享到:
相关推荐
java学习心得java学习心得java学习心得java学习心得
Java学习心得 在编程的世界里,Java是一种广泛应用的高级编程语言,以其跨平台、面向对象的特性深受开发者喜爱。对于初学者来说,掌握Java语言既是一项挑战,也是一次充满乐趣的学习旅程。"Java学习之路:不走弯路...
Java学习心得笔记主要涵盖了几大知识点,包括运算符、Integer类、引用类型、数组、多维数组、字符串类。下面将详细阐述这些内容。 1. **运算符**: 在Java中,运算符包括移位运算符。`是左移运算符,将二进制数向...
资源名称:Java入门1·2·3——一个老鸟的Java学习心得内容简介:本书是一本与众不同的Java入门好书。作者以独特的视角,向Java初学者讲述了如何才能真正理解和掌握Java语言。本书充分考虑了初学Java语言的种种困难...
我写的我自己的一个感觉很好的java学习心得,希望能对广大JAVA爱好者提供一点帮助
### Java学习心得分享 #### 一、引言 随着信息技术的快速发展,编程语言成为现代社会发展不可或缺的一部分。在众多编程语言中,Java凭借其强大的功能、跨平台的优势以及丰富的类库支持,成为了许多开发者首选的...
Java编程老鸟潜心写作,奉献高效率的Java学习心得 完全站在没有编程经验读者的角度,手把手教会读者学习Java 配16小时多媒体教学视频,高效、直观 一一击破Java入门可能会遇到的难点和疑惑 抽丝剥茧,层层推进,让...
一个老鸟的Java学习心得 -- 1·2·3
java学习心得及其使用技巧java学习心得及其使用技巧
#Java入门必读书籍,有个人的笔记(少量介意勿下),书籍开篇第一章包括软件下载和环境设置。 #穿插了195个完整示例和350个Java源程序帮助读者理解
《Java入门1·2·3:一个老鸟的Java学习心得》是一本与众不同的Java入门好书。作者以独特的视角,向Java初学者讲述了如何才能真正理解和掌握Java语言。《Java入门1·2·3:一个老鸟的Java学习心得》充分考虑了初学Java...
Java 学习心得 Java 是一种面向对象的编程语言,它的学习需要转变编程思想,从面向过程到面向对象。要学好 Java,必须知道类和对象的概念,类是对生活中事物的抽象描述,对象是对类的具体实例化。 Java 基础入门...
Java学习心得总结 Java学习心得总结,Java学习感受,回想一下学习Java的情景,我仍然兴奋不已。其实在刚接触Java时,自己确实有点晕,但经过一段时间学习,逐渐走出了迷雾。 一、学习Java的特点: * 先是不懂,...