Java基础之递归调用、封装和static
方法的递归调用
-
基本概念
递归主要指在方法体内部调用当前方法自身的形式。
-
使用原则
1 | (1)使用递归必须找到规律和退出条件; |
1 | /* |
封装(重中之重)
-
基本概念
通常情况下可以给成员变量赋值合法但不合理的数值,此时无论是编译阶段还是运行阶段都不会报错或给出提示,因此与现实生活不符。
为了避免上述错误的发生,就需要对成员变量进行密封包装处理,这种处理机制就叫做封装,换句话说,封装就是一种保证成员变量值合理和隐藏的机制。
-
实现流程
(1)私有化成员变量,使用private关键字修饰;
(2)提供公有的get和set方法,在方法体中进行合理值的判断;
(3)在构造方法中调用set方法进行合理值的判断;
1 | /* |
1 | /* |
static关键字
-
基本概念
通常情况下成员变量隶属于对象层级,创建一个新的对象后就会申请独立的存储空间存放该对象独有的成员变量信息,若所有对象中某个成员变量的数值一定相同时还要在每个对象中单独存储,此时会造成内存空间的浪费。
为了解决上述问题,在Java语言中使用static关键字修饰成员变量表示静态的含义,此时成员变量由对象层级提升到类层级被所有对象共享,该成员变量随着类的加载准备就绪与是否创建对象无关。
static关键字还可以修饰成员方法,虽然可以使用引用.访问,但推荐使用类名.访问
-
使用方式
1 | (1)非静态成员方法中既能访问非静态的成员也能访问静态的成员; |
1 | /* |
单例设计模式(重中之重)
-
基本概念
在某些特殊场合中,一个类对外提供且只提供一个对象,这样的类叫做单例类。而设计单例类的思想和模式叫做单例设计模式。
-
实现流程
a.私有化构造方法,使用private关键字修饰;
b.声明本类类型的引用指向本类的对象,并使用private static关键字共同修饰;
c.提供公有的get方法负责将对象返回出去,并使用static关键字修饰;
-
实现方式
单例设计模式的实现方式有两种:饿汉式 和懒汉式,以后开发中推荐饿汉式。
1 | /* |
1 | /* |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 WeiJia_Rao!