一.构造方法
1、构造方法的介绍
构造方法是一种特殊的方法,它是一个与类同名且无返回值类型的方法。
构造方法的功能主要是完成对象的初始化。
对象的创建就是通过构造方法来完成,当类实例化一个对象时会自动调用构造方法。
2.语法说明:
访问修饰符 构造方法名 (数据类型 参数1,数据类型 参数2,… ) {
//初始化代码
}
3.注意事项
在没有给类提供任何构造方法时,系统会提供一个默认无参构造方法。 一旦提供了自定义构造方法,系统将不再提供这个无参构造方法。如果要使用它,则必须手动添加。
4.示例
public class Penguin {
String name = "无名氏"; // 昵称
int health = 100; // 健康值
int love = 0; // 亲密度
String sex = "Q仔"; // 性别
final String SEX_MALE = "雄";
final String SEX_FEMALE = "雌";
/**
* 构造无参方法
*/
public Penguin() {
name = "楠楠";
love = 20;
sex = SEX_MALE;
}
}
二.方法重载
1、方法重载的主要说明
在同一个类中,方法名相同,通过参数个数和类型的不同来区分不同的方法,方法的重载跟返回值类型和修饰符无关。
2、举例说明
类的代码
public class StudentsInf {
public void show(){
System.out.println(45);
}
public void show(int a){
System.out.println(a);
}
public void show(double s){
System.out.println(s);
}
public int show(int a,double s){
System.out.println(a);
System.out.println(s);
return 0;
}
public int show(double s,int a){
System.out.println(a + s);
return 0;
}
}
测试类的使用
public class TestStudent {
public static void main(String[] args) {
StudentsInf studentsInf =new StudentsInf();
studentsInf.show();
studentsInf.show(45);
studentsInf.show(45.0);
studentsInf.show(45,45.0);
studentsInf.show(45.0,45);
}
}
在创建对象时,完成不同属性的动态赋值
构造方法的方法名与类名一致,该方法无返回值
构造方法重载说明:
三.static修饰符
1、对于static的使用说明
- static可以用来修饰属性、方法和代码块
- static修饰的变量属于这个类所有,即由这个类创建的所有对象共用同一个static变量。
- 通常把static修饰的属性和方法称为类属性和类方法,不使用static修饰的属性和方法属于单个对象,通常称为实例属性和实例方法
2、对于static的详解
- 被static修饰的属性、方法和代码块将具有较高执行的优先级,在类的变量声明时会优先执行static修饰的属性、方法和代码块。
- 在同属static修饰时,依照代码的先后进行执行。
- static修饰的内容,独属于这个类
3.static修饰符总结
- 在加载类的过程中,完成静态变量的内存分配,再执行静态块,两者是在创建对象之前执行的。
- 类属性和类方法可以通过类名和对象名访问,实例属性和实例方法只能通过对象名访问。
- 类方法只能访问类属性和其他类方法,不能使用this和super关键字。
- 实例方法中不可以定义static变量
4.static修饰和非static修饰的区别
四.封装
1.封装:面向对象三大特征之一。
2.封装的具体步骤
3.权限修饰符
4.封装的好处
1.便于使用者正确使用系统,防止错误修改属性
2.有助于系统之间的松耦合,提高系统独立性
3.提高软件的可重用性
4.降低了构建大型系统的风险