构造器:
1、java中的构造器(构造方法)声明在类的内部
2、构造方法的
方法名必须是类名 构造器可以是私有的并且构造器可以带参 可以不带参 也可以是默认的
3、没有创建构造器时 系统默认一个构造器 当构造器里面有语句时 此构造器就不再是默认构造器了
4、构造方法
没有返回值类型。如果有,则不是构造方法,而是和构造方法同名的
成员方法
例:带参构造器(构造方法):
public class Point{
int x;
int y;
public Point(int x,int y){
this.x = x;
this.y = y;
}
}
5、java类一定有构造器 当使用new关键字时,JVM(java虚拟机)必定调用构造方创建对象
6、
构造方法重载:即写多个参数不一样的构造器(构造方法重载是为了实现构造方法的重用)
注:
(1)、方法签名 = 方法名+参数类型列表
(2)、方法重载规则
a: 方法名一样
b: 方法参数一样
(3)、重载方法也可以说是,方法名一样,方法签名不同的方法
7、this();
构造器的调用 必须放在构造方法的第一句
构造器的调用 必须放在构造方法的第一句
静态修饰符static
1、 static{
静态初始化块
}
//静态初始化块
static{
int a = 1;
int b = 2;
System.out.println();
}
注:类在第一次被执行的时候静态初始化块首先被执行并且只执行一次 然后执行构造方法
静态初始化块
}
//静态初始化块
static{
int a = 1;
int b = 2;
System.out.println();
}
注:类在第一次被执行的时候静态初始化块首先被执行并且只执行一次 然后执行构造方法
2、静态方法不能使用
this、
super关键字
3、静态方法里面可以直接访问本类的静态属性 非静态属性不能直接访问 必须先实例化对象 通过对象.属性访问
注:类方法只能访问类属性和其他类方法
4、this不能调用
类变量和类方法(static修饰的),也不能调用局部变量
5、在方法里不可以定义static变量(类变量不能是局部变量)
6、类属性、类方法和实例属性、实例方法的区别:
类属性和类方法可以通过类名和对象名访问,而实例属性和实例方法只能通过对象名访问
封装
1、
封装是面向对象的三大特性之一,就是将类的状态信息隐藏在类内部,不允许外部程序直接访问,而通过该类提供的方法来 实现对隐藏信息的操作与访问
2、
封装的具体步骤:修改属性的可见性(即属性私有化private)来限制对属性的访问;为每个属性创建一对赋值(setter)方 法和取值(getter)方法,用于对这些属性的存取;在赋值方法中,加入对属性的存取控制语句
3、
封装的好处:隐藏类的实现细节;让使用者只能通过程序规定的方法来访问数据;可以方便地加入存取控制语句,限制不合 理操作
4、
权限控制符:
public:可以被同一个项目中的所有类访问,具有项目可见性,也是
最大的访问权限
private:成员变量和方法只能被同一个包里的类访问,具有包可见性
protected:可以被同一个包中的类访问,被同一个项目中不同包中的子类访问
默认:成员变量和方法只能被同一个包里的类访问,具有包可见性