面向对象编程
static(静态):修饰成员变量和成员方法。
类变量和类方法:有static修饰,属于类,在计算机中只有一份,会被类的全部对象共享。既可以通过类名访问(推荐),也可以通过对象名访问。
类变量应用场景:在开发中如果某个数据只需要一份,且希望能够被共享(访问,修改),则该数据可以被定义成类变量来记住。
类方法的应用场景:做工具类,提高了代码复用,调用方便,提高开发效率。
实例变量(对象的变量)和实例方法:无static修饰,属于每一个对象的。只能通过对象名访问。
注意事项:1.类方法中可以直接访问类的成员,但是不能直接访问实例成员。2.实例方法可以直接访问类成员,也可以直接访问实例成员。3.实例方法中可以出现this关键字,类方法中不可以出现this关键字。
代码块:1.静态代码块static{},类加载时自动执行,由于类只会加载一次,所以静态代码块也只会执行一次,作用:完成类的初始化。
2.实例代码块{},每次创建对象的时候,执行实例代码块,并在构造器前执行,和构造器一样,都是用来完成对象的初始化的。
设计模式:具体问题的最有解决方案
单例设计模式:确保一个类只有一个对象。
1.饿汉时单例设计模式(在获取对象时,对象已经创建好了):
public class A { //2、定义一个类变量记住类的一个对象 private static A a=new A(); //1、私有构造器 private A(){ } //3、定义一个类方法放回对象 public static A getObject(){ return a; } }
2.懒汉式单例设计模式(拿对象时,才开始创建对象):
public class B { //2.定义一个类变量,用于存储这类的一个对象。 private static B b; //1.把类的构造器私有。 private B(){ } //3.定义一个类方法,这个类方法要保证第一次调用时才创建一个对象,后面调用时都会用这一个对象放回。 public static B getInstance(){ if(b == null){ b = new B(); } return b; } }标签:20,变量,对象,day1,访问,实例,static,Java,方法 From: https://blog.csdn.net/weixin_74799820/article/details/143697824