封装
什么叫封装?
private实现封装
getter和setter方法
构造方法
基本语法
如何构造
this关键字
认识代码块
普通代码块
构造代码块
静态代码块
补充说明
toString方法
匿名对象
内容重点总结
封装
什么叫封装?通俗的来说就是将一个物体封装起来不让别人使用,在我们java里面的封装,有哪些呢?一般我都在java当中用private来实现封装。
private实现封装
private/ public 这两个关键字表示 "访问权限控制"
被 public 修饰的成员变量或者成员方法, 可以直接被类的调用者使用
被 private 修饰的成员变量或者成员方法, 不能被类的调用者使用
直接使用public
执行结果
我们来看看这这样的代码,如果我们想(name改成myName)我们需要大规模的修改自己的代码,维护成本高花费的精力也大,为了减少这种大规模修改自己的代码,我们该怎么办呢?
使用 private
当我们不想让setName里面的值为“bit”时,我们只需要在setName里面修改就行了,不用去挨着每个修改。
注意
1.使用private封装,属性就被封装起来了!只能在类(当前类)中使用!此时提供公开的get和set方法! 2.封装的好处是让属性更安全。
getter和setter方法
当我们使用private封装时,属性被封装起来,只能在类中使用。此时提供公开的get和set方法!
如何快速使用getter和setter的方法!
构造方法
构造方法:1.方法名和类名是相同的,且构造方法比较特殊,没有返回值。
构造方法是干嘛的?--》一个对象的产生(对象的实例化)
1.为对象分配内存
2.调用合适的构造方法。(合适:意味着构造方法不止一个!)
*注意 * 1.如果没有实现任何的构造方法,编译器会帮我们默认生成一个不带参数的构造方法 * 也就是说一个类,至少会有一个构造方法,就算你没有写! *2.如果当前类有其他的构造方法,那么编译器就不会帮我们生成不带参数的构造方法! *3.构造方法之间可以构成重载!
this关键字
this表示当前对象引用(注意不是当前对象). 可以借助 this 来访问对象的字段和方法
* this3种用法 *
1.this.data调用当前对象的属性
2.this.func()调用当前对象的方法
3.this()调用当前对象的其他构造方法 * 注意只能存放在构造函数当中!!!!
认识代码块
根据代码块定义的位置以及关键字,又可分为以下四种:
普通代码块
构造块
静态块
同步代码块
举个例子;实例代码就是使用{}定义的代码,而静态代码是在使用关键字static{}
如何被调用呢?
在主函数main中new一个对象
打印结果
我们发现,打印出来的顺序是静态代码在前,实例代码在后,最后才是我们的构造方法
这说明代码块执行是有顺序的,静态代码-》实例代码-》-》构造方法。
补充说明
toString方法
它可以把我们的对象转换为字符
我们来看打印结果,加上toString方法后我们打印的结果 自动给我们转化称为了字符。
如何快速使用toString方法?
这和我们在private封装采用set和get方法一样。
匿名对象
什么是匿名对象?
没有名字的对象,且只能使用一次!
内容重点总结
1.一个类可以产生无数的对象,类就是模板,对象就是具体的实例。
2.类中定义的属性,大概分为几类:类属性,对象属性。其中被static所修饰的数据属性称为类属性, static修饰的 方法称为类方法,特点是不依赖于对象,我们只需要通过类名就可以调用其属性或者方法。
3.静态代码块优先实例代码块执行,实例代码块优先构造函数执行。
4.this关键字代表的是当前对象的引用。并不是当前对象。
小生不才,只能出这么粗糙的文章了,若有建议,洗耳恭听啊!!!