文章目录
Java语言基础
包含方法的重载(Overload)、构造方法的定义、默认的构造方法、构造方法重载、this关键字的定义、this的用法。
一、方法的重载(Overload)

假设要设计一个收银台
A方案:设计三个窗口,分别使用现金、信用卡、支票进行交付
B方案:设计一个窗口,可以根据用户付款方式,实现现金、信用卡、支票进行交付。相对于A方案,B方案更灵活
重载的定义
1)同一个类中,方法名称相同,参数列表不同
2)编译器在编译时自动根据方法的签名来绑定调用不同方法
/*
* 重载演示
* 1.同一个文件中可以包含多个类
* 2.public修饰的类只能有一个
* 3.public修饰的类必须与文件名相同
*/
public class Test {
public static void main(String[] args) {
Aoo o =new Aoo();
o.sayHi();
o.sayHi(25);
o.sayHi("zhangsan");
o.sayHi(25, "zhangsan");
o.sayHi("zhangsan", 25);
}
}
class Aoo{
void sayHi() { }
void sayHi(String name) { }
void sayHi(int age) { }
void sayHi(String name,int age) { }
void sayHi(int age,String name) { }
}
只有一个sayHi方法,但它可以处理不同的数据。这种设计方式,称为重载设计,即设计多个同名但参数列表不同的方法
二、构造方法
构造方法又称为构造器、构建器、构造函数
2.1、构造方法的定义
1)常常用于给成员变量赋初值
2)构造方法是在类的定义的方法。构造方法与类同名;没有返回类型,不能写void
class max{
int a;
int b;
max(){ //无参构造
}
max(int c){ //一个参数构造
a = b = c;
}
max(int d,int e){ //多个参数构造
a = d;
b = e;
}
}
3)在创建(new)对象时被自动调用
max m1 = new max(); //调用无参构造
max m2 = new max(5); //调用一个参数构造
max m3 = new max(2,5); //调用多个参数构造
2.2、默认的构造方法
若自己不写构造方法,则编译器默认添加无参构造;若自己写了构造,则不再默认提供
class max{
int a;
int b;
max(){ //无参构造,如不写,默认提供,写了则不提供
}
}
2.3、构造方法重载
1)方便对一个类定义多个构造方法,这些构造方法都有相同的名称(类名),方法参数不同
2)在创建对象时,java编译器会根据不同的参数调用不同的构造方法
public class ooo {
public static void main(String[] args) {
max m1 = new max(); //调用无参构造
max m2 = new max(5); //调用一个参数构造
max m3 = new max(2,5); //调用多个参数构造
//max m3 = new max(2,5,8); //编译错误,没有三个数的构造方法
}
}
class max{
int a;
int b;
max(){ //无参构造
}
max(int c){ //一个参数构造
a = b = c;
}
max(int d,int e){ //多个参数构造
a = d;
b = e;
}
}
三、this关键字
3.1、this关键字的定义
1)指代当前对象,那个对象调指的就是哪个对象
2)方法中访问成员变量之前默认都有个this.
3.2、this的用法
1)this.成员变量名-----访问成员变量
2)this.方法名()-----调用方法
3)this()-----调用构造方法
注:成员变量和局部变量重名时,不可省略this
class max{
int a;
int b;
max(){ //无参构造
}
max(int c){ //一个参数构造
this.a = this.b = c;
}
max(int d,int e){ //多个参数构造
this.a = d;
this.b = e;
}
}
:方法的重载、构造方法、this关键字&spm=1001.2101.3001.5002&articleId=124422787&d=1&t=3&u=f3014c69d84040219b149f70f18b0fb2)
3097

被折叠的 条评论
为什么被折叠?



