8.04
面向对象特性:封装,继承,多态
Java的四大特性(封装,继承,多态,抽象)
Java面向对象三大特性之 类的封装
普通封装
如果要实现一些功能,或者储存一些数据
可以将这些数据和功能全部集中在一个类中
在需要的时候创建出本类的对象,就可以使用。
(class类是对一类事物的描述或者抽象)
Java类的封装
在普通封装的基础上,进一步进行一些代码限制,提高代码数据的安全性
1.将所有的属性私有化 private 除了本类之外,外界无法访问
Java四大权限修饰符
-public 公共的权限修饰 当前工程下任何类都能访问
-protected 受保护的权限修饰 同一个包能访问,如果不同包,只有子类能访问
-什么都不写 默认权限修饰 只能在同一个包访问
-private 私有的权限修饰 只有本类能访问
2.对外提供公共的访问方式
-获取属性方法
get属性名() 有返回值,无参数 (注意属性名首字母大写!)
-修改属性方法
set属性名() 无返回值,有参数 (注意属性名首字母大写!)
this关键字
含义:代表当前类的对象
作用:1.能调用除当前类所有的属性和方法
2.当形式参数名和成员属性名一样时,为了区分等号左右两边
使用this来代表本类的属性
类的封装的作用
1.提高数据的安全性
2.遵循java的开发规范,未来很多框架都要求必须进行类的封装
封装的场景
只要有成员属性的类,都要进行封装
构造的特性
如果什么构造方法都不写,此类默认隐藏一个空参构造
如果只写有参,不写空参,那么隐藏的空参构造就会被覆盖
无论是否使用空参构造,都顺手写一个空参构造
static关键字
含义:静态的修饰符(共享)
修饰成员属性-->静态属性
-归属于类,使用类名调用
-可以被本类名所有的对象所共享
修饰成员方法-->静态方法
-归属于类,使用类名调用
-可以被本类名所有的对象所共享
-静态方法无法直接访问非静态的数据
如果非要访问,必须创建对象
匿名对象
匿名:没有名字(对象名),没有引用
new Student();
有名:有对象名,有引用
如:Student s = new Student(); 对象名s
匿名对象的作用:
-由于没有引用,所有无法复用,只能做一次性的事情
作业的设计(类的设计)
-技能类
-英雄类
-技能的数组
-模拟数据库类 Database
-英雄的数组
-应用程序的类 Application
-静态方法 run方法(创建数据库对象,各种逻辑,各种循环)
-测试类 Test/Main
-只有main方法
-一行代码:应用程序类.run();
支线任务:Java的类图