1.类是对象的抽象,对象是类的实例化。
2.类中的属性和方法 ,一动一静。
3.构造函数真牛逼:new 的是构造函数,执行顺序先加载构造函数。
a. 作用:创建对象;
初始化成员变量;尽管定义了成员属性但是已经被初始化了,new 时赋值。
可以重载
b.构造方法与类名一致,没有返回值!
c.一个类没有提供构造方法,则调用默认无参构造函数
4.封装。
一些数是公共的会导致程序不安全!对外提供一个方法。
5.一般空指针异常是对象为空,试图操作对象中的方法或者属性;User u1 = new User();空引用访问方法
6.函数传值:地址传值----引用传值(数组、对象)若操作内存共享;数值传值!
7.this:代表每个类创建就代表那个类。
只能用在定义类中的构造函数和方法中使用!但this 不能用在静态方法中。
还有个功能表示的是成员变量(因此this 可以省略)
this()在一个构造方法中调用另一个构造方法,且是构造方法中第一行。
8.静态:静态变量,(所有对象都有则加Static,省空间)
静态方法,类名.调用;普通的则是this. 调用
静态代码块,只执行一次!
工具类的使用。要想访问类中的数据
代码块(一般记录日志):实例代码块在构造方法之前,每次都执行,
静态代码块在类加载时执行且只执行一次
User s=null; s.静态方法则不会抱空指针异常!
总结:封装(权限,构造函数, this, 静态 方法,单例模式)
单例模式:保证java虚拟机中对象只有一个!目的:节省内存。
==:数值类型比较值 引用类型比较地址
9.
缺点:构造方法私有化,无法被继承。