一.对象和类的概念
对象:真实存在的唯一事物
类:同一事物的公共属性与行为的抽取
面向对象的核心思想:找适合的对象做适合的事情
找对象的方式:
1.自定义类,然后创建对象 2.使用sun给我们提供的类创建对象 3.在java的世界中,是先有类后有对象的
如何自定义类创建对象?
1.自定义类 格式: class 类名 {} 2.通过自定义创建对象 格式: 类名 变量名 = new 类名();
如何访问对象的属性或者调用对象的方法?
1.访问对象的属性: 格式: 对象名.属性名 2. 调用对象的方法: 格式: 对象名.方法名();
二、成员变量和局部变量的区别
定义的位置上区别:
成员变量定义在方法之外,类之内的。 局部变量是定义在方法内部
作用上的区别:
成员变量用于描述一类事物的公共属性 局部变量只是提供一个变量给方法内部使用而已
生命周期的区别:
成员变量是随着对象的创建而存在“堆”内存中的,随对象的消失而消失。 局部变量是执行了对应的方法创建局部变量语句的时候在“栈”内存中存在的,局部变量一旦出了自己的作用域,那么就会马上从内存中消失。
初始值的区别:
成员变量都有默认的初始值,因此可以不用赋初值就可以使用了;局部变量是没有默认初始值的,必须要经过赋初值才能使用 成员变量默认初始值如下: byte、short、int : 0; long:0L float:0.0f double:0.0 char:'' String:null
三、匿名对象
什么是匿名对象
就是没有引用类型变量指向的对象就是匿名对象
匿名对象的格式
new 类名();
匿名对象要注意的事项:
1.一般不能给匿名对象赋予属性值,因为永远都无法获取到 2.两个匿名对象永远都不可以能是同一个对象,因为只要遇到new关键字创建的对象,它都是一个新的对象 3.匿名对象的出现只是为了简化书写
匿名对象有什么用?
1.如果只调用该对象的方法只是一次而已就不再使用了,那么就可以使用匿名对象简化书写。 2.作为实参传递,调用另一个方法
四、类的封装
为什么要封装
为了解决数据在访问的时候出现安全隐患
两个常用的权限修饰符
1.public:公用的,使用public修饰的成员属性任何人都可以直接访问
封装的步骤
1.使用private修饰需要被封装起来的属性 2.提供公共的方法设置或者获取封装起来的成员属性 3.公共的方法的命名规范: public void setXxx(参数列表){ } public 返回值类型 getXxx( ){ }
对于封装起来的属性,一定要对外提供get和set方法吗?
封装不一定要提供get或者set方法,这是要看需求而定的。命名也不是一定要使用set和get,这只是一种习惯而已。自要符合标识符的命名规范即可。
封装的好处
1.解决了数据的安全问题 2.操作简单 3.隐藏实现