1. import语句后加入static可以使包内所有方法变为静态方法
import static com.food
2.静态类的构造函数应标记为静态函数,静态成员变量默认值为空(null)
3.final:
final 定义后可初始化,但只能初始化一次 static final int MAX = 100;
finald的方法不能被重写,final的类不能被继承。
4.内存分配
堆栈(stack)存放方法的局部变量,参数,返回值,返回地址;方法所在块的底部为方法基址。
堆(heap)
【】
5.重载和重定义
重载(overload)通过参数区分,位于一个类中;
重定义(override)函数名,参数完全一致,若要调用父类函数则使用Super.method()。
6.抽象类:public abstract class A{}
有至少一个无方法体,只有声明的方法;只能被继承,不能被实例化;子类(非抽象类)实例化时先实例化父类
接口:public interface A{} public class B implements A{}
小接口组成大接口: public interface D extends A,C{}(C is an interface.)
7. Java只能继承一个父类,但能实现多个接口
将实现了接口A的类B实例化后可以用接口A的对象表示,实现了多样化 A a = new B(); A.***()........
8.内部类
class A{class B{} B getB(){return new B();}} (定义一个自己的类给自己用,不过可以通过函数传递出去)
9. 异常处理
try{}catch(Exception e){}finall{无论是否出现异常最后都执行这里的程序}
若不想函数自己处理异常,则使用throws将异常抛给函数调用者(函数)处理: void A() throws Exception{}
10.构造器
若无构造器则自动生成默认构造器;若构造器定义为private,则不能实例化该类,只能使用静态方法建立;
调用导出类构造器前先调用基类构造器(调用基类默认构造器【基类无构造器】或基类无参数构造器或指定调用需参数基类构造器【super(param)】)
11.垃圾回收
系统在内存缺乏时去销毁没有被引用的对象,并触发对象的finalize事件