方法理解
修饰符 返回类型 方法名称([参数类型 变量, ......]) {
方法体代码;
[return [返回值];]
}
其中返回值类型可以是基本数据类型,也可以是引用类型,还可以是空(void)
基本数据类型有八个:byte(1),short(2),int(4),long(8),float(4),double(8),boolean(1位,默认为false),char(2字节,采用Unicode,在UFT-8中是3字节的,JAVA中一般不用),他们各自有自己的类(首字母大写)。
引用类型可以是类、接口、数组等。
修饰符分访问控制修饰符和非访问修饰符:
访问控制修饰符有4个:default(包内类及子类)、public(随便用)、protected(类及子类,可跨包)、private(类内)
非访问修饰符:static、final、abstract、synchronized、volatile
static:修饰的变量称为类变量,除此外的类内部变量叫实例变量(成员变量,全局变量),方法内部变量叫局部变量。
实例和对象的区别:
MyClass myClass=new MyClass();
new的时候在堆中新建了一个对象(保存在堆中)。这个对象是MyClass的实例(实例化,初始化主要工作)。其中myClass是该对象的引用(保存在栈空间)。类是人类,对象是个人,但这个人还没不够具体,JAVA规定一个实例化(初始化)的过程,把对象具体,变成一个实例。其实也没多大区别,哈哈。
而static修饰的变量,则跳过对象,直接跟类联系,所以叫类对象,不叫实例对象(都没有实例)。同理,这就导致了static修饰的方法可以直接调用,不用实例化创建对象(没有this,创建类时分配一次内存)。类方法中不能用实例方法。优先加载。
final:常量,不能修改,不能继承,可以重载。所以不能与abstract一起使用。
abstract:抽象定义抽象类和方法,抽象方法必须在抽象类里面。不能实例化,只能继承,因为缺少必要的实现