类
语法:
public class 类名
{
构造函数;
字段;
属性;
方法;
}
写好一个类之后,我们需要创建这个类的对象
创建这个类的对象的过程称之为类的实例化。关键字 :new
类是不占内存的,对象是占内存的。
属性
作用:保护字段,对字段的赋值和取值进行限定。
本质就是两个方法,一个叫 get() 一个叫set()
既有get()也有set()我们诚之为可读可写属性。
只有get()没有set()我们称之为只读属性
没有get()只有set()我们称之为只写属性
Field 字段 Method 方法 Property 属性
静态与非静态(实例成员)区别
1.在非静态类中,即可以有实例成员,也可以有静态成员。
2.在调用实例成员的时候,需要使用对象名 “点出” 实例成员;
在调用静态成员的时候,需要使用类名 “点出” 静态成员名;
总结:静态成员必须使用类名去调用,而实例成员使用对象名调用。
静态函数中,只能访问静态成员,不允许访问实例成员。
实例函数中,即可以使用静态成员,也可以使用实例成员。
静态类中只允许静态成员,不允许出现实例成员。
使用:
1.如果想要你的类当做一个“工具类”去使用,这个时候可以考虑将类写成静态类。
2.静态类在整个项目中资源共享。
只有在程序全部结束之后,静态类才会释放资源。
构造函数
作用:帮助我们初始化对象(给对象的每个属性依次的赋值)
构造函数是一个特殊的方法:
1.构造函数没有返回值,连void也不能写
2.构造函数的名称必须跟类名一样
创建对象的时候会执行构造函数
构造函数是可以重载的
类当中会有一个默认的无参数的构造函数,当你写一个新的构造函数之后,不管是有没有参数,有没有返回值,那个默认的无参数的构造函数都会被干掉。
析构函数
语法:
~类名()
{
}
作用:
1.帮助我们释放资源
当程序结束的时候 析构函数才会执行
new关键字
new帮助我们做了3件事:
1.在内存中开辟了一块空间
2.在开辟的空间中创建对象
3.调用对象的构造函数进行初始化对象
this关键字
作用:
1.代表当前类的对象
2.在类当中显示的调用本类的构造函数