类、域、方法、构造方法
基本概念
- 类是组成Java程序的基本要素
- 是一类对象的原型
- 它封装了一类对象的状态和方法
- 域(filed) 是类的属性,是用变量来表示的.
- 方法(method) 表示了类的功能和操作.
- 构造方法 (constructor), 用来初始化(new) 该类的一个新的对象
构造方法无返回值类型.
如果没有定义构造方法,系统会自动产生一个构造方法,这就是(default constructor) 默认构造方法
默认构造方法不带参数,并且方法体为空. - 方法重载(overloading) 多个方法有相同的名字,编译器能够识别出来
区别方法主要看参数类型和个数的区别.
this关键字的使用
this关键字提供了访问当前对象本身的途径,举例来说:
void SayHello(){
System.out.println("Hello! My name is"+this.name);
}
这里this就指代了SayHello()这个方法的引用.this还可以解决局部变量与域同名的问题
在构造方法中,我们可以这样表示:
Person(int age,String name) {
this.age = age;
this.name = name;
}
这里域变量和参数变量的名字重复了,如果想要在构造方法内定义一个重名变量String name的话,会报错.这时候就在域变量前加上this,这样this.name就指代了Person()这个构造方法的变量值,等号后面的name就指代了传入进来的name参数变量的值.this还可以用来在构造方法中调另一种构造方法
Person(){
this("张三",12);
}
Person(String name,int age){
}
这里带参构造被无参构造用this调用,而识别哪一个方法是被this调用的途径是给看this所带的参数类型,这条调用语句必须放在第一句.
注意:这里构造方法只能用this调用一个构造器.