世间的一切事物都可以看成对象。将对象划分成两个部分:动态和静态。动态的对应行为,静态的对应属性。类就是封装对象属性和行为的载体
世间的一切事务都可以按照标准,提取其公共特征将其归类。
封装就是将对象的属性和行为封装起来,对客户隐藏实现细节。对应现实来说,你不知道我是怎么听到你的声音,分析然后发出回应,但你仍然可以和我正常交流。
继承是类与类之间的一种联系,类似于父与子之间的联系。子类继承父类,具有父类的属性和方法。
简单来说就是:一种事物多种形态。子类继承父类,通过抽象类实现特化的方法。比如所有家禽都会叫,那么可以把家禽类定义为抽象类,“叫”定义为抽象方法。在具体的鸡鸭鹅类中重写override这一方法。在研究家禽“叫”这个行为时,直接调用家禽类的抽象方法,实现代码复用,减少代码的重复度和维护难度。
接口是一种实现多态更方便的方式,用于解决“多重继承”问题。继承是一个 "是不是"的关系,而 接口 实现则是 "有没有"的关系。如果一个类继承了某个抽象类,则子类必定是抽象类的种类,而接口实现则是有没有、具备不具备的关系,比如狗是否能钻火圈,能则可以实现这个接口,不能就不实现这个接口。
被本类或其它类共享
被声明为static的变量、常量和方法被称为静态成员。静态成员属于类所有,存放在全局区,通过 类名.静态成员 的方式调用。
静态方法中不能使用this关键字,不能直接调用非静态方法。
不能将方法体内的局部变量声明为static的。
在执行类时,先执行类的初始化操作,使用static定义一个静态区域。
创建、使用、销毁
销毁:Java拥有垃圾回收机制,引用超过作用范围或被赋值为null都会被JVM认为是垃圾。重写finalize(),使用System.gc()
原文:https://www.cnblogs.com/tanjr/p/14248020.html