ctrl+shift+f是格式化
封装的好处:
1、封装之后,对于那个事物来说,看不到这个事物比较复杂的一面,只能看到该事物简单的那一面。复杂性封装对外提供简单的操作入口。照相机就是一个很好的封装案例,照相机的实现原理非常复杂,但是对于使用照相机的人来说,操作起来是非常方便的是非常便捷的。还有像电视机也是封装的,电视机内部实现非常复杂,但对于使用者来说不需要关心内部的实现原理,只需要会操作遥控器就行。
2、 封装之后才会形成真正的“对象”,真正的“独立体”
3、封装就意味着以后的程序可以重复使用,并且这个事物应该适应性比较强,在任何场合都可以使用。
4、 封装之后,对于事物本身,提高了安全性。【安全级别高】
封装的步骤:
1、 所有的属性私有化,使用private关键字进行修饰,private表示私有的,修饰的所有数据只能在本类中访问。
2、对外提供简单的操作入口,也就是说以后外部程序想要访问age属性,必须通过这些简单的入口进行访问:
-对外提供两个公开的方法,分别是set方法和get方法
-想修改变量属性,调用set方法
-想读取age属性,调用get方法
3、set方法的命名规范:
public void set+首字母大写的变量名(int a) {
变量名 = a;
}
4、get方法的命名规范:
public int get+首字母大写的变量名(){
return age;
}
一个属性通常访问的时候包括两种访问形式。
- 第一种方式:想读取这个属性的值,读取get
- 第二种方式:想修改这个属性的值,修改set
需要大家先背会以下内容:
* setter and getter方法没有static关键字
* 有static关键字修饰的方法怎么调用:类名.方法名(实参);
* 没有static关键字修饰的方法怎么调用:引用.方法名(实参);
关于java类中的构造方法:
1、构造方法又被称为构造函数/构造器/Construtor
2、 构造方法语法结构:
[修饰符列表] 构造方法名(形式参数列表){
构造方法体;
}
3、回顾普通方法的语法结构:
[修饰符列表] 返回值类型 方法名 (形式参数列表){
方法体;
}
4、对于构造方法来说,“返回值类型”不需要指定,并且也不能写void,只要写上void,那么这个方法就成为普通方法了。
5、 对于构造方法来说,构造方法的方法名必须和类名保持一致。
6、 构造方法的作用:
-构造方法存在的意义是,通过构造方法的调用,可以创建对象。
7、 构造方法应该怎么调用?
-普通方法是这样调用的: 方法修饰符列表中有static的时候:类名.方法名(实参列表)、方法修饰符列表中没有static的时候:引用.方法名(实参列表)
-new 构造方法名(实参列表)
8、 构造方法调用执行只有,有返回值吗?
每一个构造方法实际上执行结束之后都有返回值,但是这个“return 值;”这样的语句不需要写。构造方法结束的时候java程序自动返回值。
并且返回值类型是构造方法所在类的类型。由于构造方法的返回值类型就是类本身,所以返回值类型不需要编写。
9、注释和取消注释:ctrl + / , 多行注释:ctrl + shift + /
10、当一个类中没有定义任何构造方法的话,系统默认给该类提供一个无参数的构造方法,这个构造方法被称为缺省构造器。
11、当一个类显示的将构造方法定义出来了,那么系统则不在默认认为这个类提供缺省构造器。建议开发中手动的为当前类提供无参数构造方法。因为无参数构造方法太常用了。
12、构造方法支持重载机制,在一个类当中编写多个构造方法,这多个构造方法显然已经构成方法重载机制。
13、 只有方法名后面才带()
构造方法的另一个作用,创建对象的同时,初始化实例变量的内存空间
// 在myeclipse当中怎么查看访问的是哪个属性,查看访问的是哪个方法?
// 按ctrl键,鼠标移动到查看的元素上,出现下划线的时候开始单击。
// 另外,在一个类当中元素过多,想快速查看,在当前类中使用ctrl + o ,然后输入要查找的元素名称。
* 成员变量之实例变量,属于对象级别的变量,这种变量必须先有对象才能有实例变量。
* 实例变量没有手动赋值的时候,系统默认赋值,那么这个系统默认赋值是在什么时候完成的呢?
是在类加载的时候吗?不是,因为类加载的时候只加载了代码片段,还没来得及创建对象。所以此时实例变量并没有初始化。
* 实际上,实例变量的内存空间是在构造方法的执行过程中完成开辟的。完成初始化。
* 系统在默认赋值的时候,也是在构造方法执行过程当中完成的赋值。