构造器
一.普通方法和构造方法对比
格式
- 普通方法
public+返回值类型+方法名(参数类型 参数名,……){
方法体
}
- 构造方法
public+方法名(必须与类名同名)(参数类型 参数名,……){
方法体
}
从对比中可以发现:构造方法没有返回值,但普通方法必须要有返回值(void代表空返回值,空返回值也是返回值),且构造方法的方法名必须与类名同名。
构造方法用法
public class Student{
public String name;
public int score;
public Student(String name,int score){
this.name=name;
this.score=score;
}
}
下面是调用方法
Student lh=new Student("lihua",88);
- 每个类都具有一个隐式的空参数构造方法,在显式的写了构造方法之后会被覆盖掉,比如:我们只写入了一个构造方法Student(String name,int score),那么原来的Student()就被替代了,此时若要创建新的Student对象便不能使用 Student lh=new Student()该语句。
- 构造方法是 创建对象时调用的(对于每个对象,构造方法只能执行一次)
- 构造方法可以自己添加参数 在创建对象时直接初始化好
封装
-
提高了安全性
例如通过控制访问权限可以将可以将不想让客户端程序员看到的信息隐藏起来,如某客户的 银行的密码需要保密,只能对该客户开发权限。 -
提高了复用性
将能实现某一特定功能的代码封装成一个独立的实体后,我们在可以在需要的时候调用,极大的提高了代码的复用性。
封装的set/get/is等方法
格式:
- set/get/is + 属性名 作为方法名
- set : 给属性赋值 参数列表
- get : 获取属性值 返回值
- is : 判断属性 - 用于布尔值 返回值
访问权限修饰符: 限制代码可以使用的范围
-
private : 只能在类{}中使用
-
缺省的 : 同包范围下都可以
-
protected: 同包范围下 也可以在不同包的子类中使用
-
public: 都可以用
1.以上四个都可以修饰 属性与方法
2.修饰类只有 public 和 缺省的
3.public 修饰的类必须与文件名一致 属于是这个文件的主类
私有化构造方法: 这个类不能在本类之外调用构造方法
- 创建对象 基本上不在本类中创建 ,创建对象时必须调用构造方法
- 在类之外不能创建对象了 , 也就不能通过对象调用属性以及方法