面向对象
(一)访问控制四种:public,private,default,protected
封装:在外部类不能随意访问,使用方法为了更好的管理,提供安全的访问方式,只能在内部类访问
构造方法(不可写void,不然就不是构造方法了)
必须用new关键字调用
相当于生活中某商品的生产线,每一个类默认提供一个无参的构造方法
(1)构造方法名称和类名一样
(2)构造方法没有返回类型
(3)构造方法不能使用return语句返回内容,但是可以单独写return语句作为方法的结束
关键字
1,this关键字
(1)可调用本类中的成员方法
(2)调用本类中的属性
(3)调用本类中的构造方法
public Animal(int age,String name){
this.age=age;
this.name=name;
}
2,new关键字
(1)申请内存空间
(2)调用构造方法
(3)返回对象的引用
Animal an1=new Animal();
3,static关键字(不属于对象,在static在数据区存着,是所有对象共享的)
方法的递归:直接递归,间接递归
用static修饰的变量称为静态变量,可以不需要对象直接用类名直接访问
Animal.count++;
static可以修饰变量,也可以修饰方法
static修饰的方法,称作静态方法,或者类方法
不需要创建对象,可以用类名直接调用
静态资源与非静态资源互相访问的规则:
主要看互相有没有内存空间,
static关键词本质:
static关修饰的变量,运行该类时,class loader加载类时,就立即分配了内存空间
非static的变量,必须创建对象,才能 分配内存空间
static修饰的方法,运行该类时,class loader加载类时,就立即分配了静态方法的入口地址
非static的方法,必须创建对象才能为该对象分配对象方法的入口地址
(二)方法里面的变量是局部变量