成都网站logo设计,i营销,工作自我评价,江门骏科网站建设成员方法分类#xff1a;
静态成员方法#xff08;有static修饰 属于类#xff09;建议用类名访问#xff0c;也可以用对象访问
实例成员方法#xff08;无static修饰 属于对象#xff09;只能用对象出发访问 使用static来定义一些工具类 工具类直接使用类名.方法调用即…成员方法分类
静态成员方法有static修饰 属于类建议用类名访问也可以用对象访问
实例成员方法无static修饰 属于对象只能用对象出发访问 使用static来定义一些工具类 工具类直接使用类名.方法调用即可将构造器私有化不要对外产生对象。 /*
* 工具类
* */
public class ArraysUtils {//构造器私有化private ArraysUtils(){}//数组转字符串public static String tostring(int[] arr){if(arr null){return null;}String result [;for (int i 0; i arr.length; i) {if(i arr.length - 1){result (arr[i] ]);}else{result (arr[i] ,);}}return result;}//求数组的平均值public static double getAverage(int[] arr){if(arr null){return 0.0;}double ave 0.0;double sum 0.0;for (int i 0; i arr.length; i) {sum arr[i];}ave sum/arr.length;return ave;}}//测试类
public class TestDemo {public static void main(String[] args) {int[] arr {1,5,44,29,36,7,12,23,18,489};System.out.println(arr);System.out.println(原始数组为 ArraysUtils.tostring(arr));System.out.println(均值为 ArraysUtils.getAverage(arr));int[] arr1 null;System.out.println(空数组为 ArraysUtils.tostring(arr1));System.out.println(均值为 ArraysUtils.getAverage(arr1));}
} 代码块 类中的代码块在main方法之前执行可以做一些初始化操作 构造代码块在创建对象时候触发比构造器先执行。
静态代码块用于初始化类构造代码块用于初始化对象、实例资源。 单例设计模式
设计模式是一套被前人反复使用、多数人知晓、经过分类编目的代码设计经验的总结后来者可以拿来解决问题。
设计模式是软件中的常见解决方案好的设计模式可以进一步的提高代码的重用性。
单例模式可以保证系统中应用该模式的这个类只有一个实例即一个类永远只能创建一个对象。例如任务管理器对象我们只需要一个就可以解决问题了这样可以节省内存空间。
饿汉单例设计模式
在用类获取对象的时候对象已经提前为你创建好了。
设计步骤
1.定义一个类把构造器私有化。
2.定义一个静态变量存储一个对象。 /*
* 学会饿汉单例模式
* */
public class SingleInstance {//构造器私有化private SingleInstance(){}//定义一个公开的静态变量来存储对象//饿汉式单例模式在这里加载静态变量的时候就会创建一个对象。public static SingleInstance s1 new SingleInstance();
}
懒汉单例模式
在真正需要该对象的时候才去创建一个对象延迟加载对象。 /*
* 学会使用懒汉单例模式
* */
public class SingleInstance2 {//构造器私有化private SingleInstance2(){}//创建一个公共的静态变量来存储实例对象private static SingleInstance2 s2;//提供一个公共的方法来获取实例对象public static SingleInstance2 getInstance(){//实例对象为空则创建一个直接返回 否则返回已经创建的实例对象/*以下注释代码有问题实现不了懒汉单例因为第一次创建时返回一个新对象但是该对象并没有赋值给s2这样下次执行getinstance方法时候s2仍然为null所以每次返回的都不一样。*//*if(s2 null){//第一次创建return new SingleInstance2();}return s2;*/if(s2 null){s2 new SingleInstance2();}return s2;}}
懒汉单例最好使用private私有化变量饿汉单例必须public因为懒汉单例外部是通过getinstance方法来获取对象的而该方法是public公开的饿汉单例需要外部来获取该变量必须public公开。
继承 就近原则先局部然后子类最后父类。 私有方法不能被重写