javaDay06总结

一、笔记

1.面向过程开发:在实现某个功能时,注重的是步骤,每个步骤都是自己亲力亲为。
面向对象开发:在实现某个功能时,不注重过程与步骤,只要结果,不是自己亲力亲为,而是找个人去做。

面向对象开发的好处:
1.符合我们常规的方式,把复杂的问题简单化
2.由执行者变成指挥者
3.便于代码的扩展与维护
面向对象的三大特征: 封装  继承 多态
面向对象开发与面向过程开发都不可以少相辅相成。

2.类与对象:

类:是抽象的, 用于描述一个一类事物
成员属性:   是什么(名词) 如:年龄 性别 姓名
成员方法:   能够做什么(动词)如:吃猪脚饭  学习
对象 :  是具体的表现形式
类与对象的关系:类是对象的抽象(图纸)  对象是类的具体(房子)

3.定义一个类
找其属下与方法

成员属性
     *  数据类型   变量
     *  String name;
     *  int  age;
成员方法
     *     // eat的方法
     * public void  eat(){    
     *            执行操作
     *        }
注意点:
 1. 成员属性都是些在类里,而不是写在方法里
 2. 如果这个方法是成员方法必须把static 关键字去掉 

4.内存分析
在这里插入图片描述
在这里插入图片描述

1.以引用数据类型作为返回值    ==》   传递的都是内存地址
2. 以应用数据类型作为参数

5.匿名对象
定义:一次性对象,没有名字的对象 new Student()

特点 :   
1.不会在栈内存里有地址,但是会在堆内存里去开辟空间
2.这个一次性的对象用完就马上销毁, 所以节省内存空间
3.匿名对象 给成员变量赋值没有任何意义,如:play(new  String[]{"30","40","50","60"})
使用情况:(两种)
1.一般是与作为方法的参数使用 getStudent(new Student())
2.直接调用其类里的方法 new  Student().study();

6.局部变量与成员变量
定义:
局部变量:方法里的变量叫做局部变量,包含方法里的参数
成员变量:类下面的变量叫做什么成员变量
区别:

位置:
位置不一样。 局部变量放在方法里 ;成员变量在类下面
生命周期:
1.局部变量生命周期随着方法的开始而开始,  随着方法的结束而结束
2.成员变量的生命周期随着对象的创建 而开始 ,随着对象的回收而结束 (垃圾回收期)  
数据存的位置不一样:
局部变量存在栈里,而成员变量存入在堆里
有无默认值:
成员变量都有默认值,局部变量没有默认值

7.属性私有化
关键字: private(加上私有的关键字之后,只能够本类访问)
可以私有化有:
1.对属性 2. 对方法 3 对类私有化 4.对接口私有化
私有化 其实就是一种简单的封装

私有化的好处:
1.隐藏内部细节 
2.保护数据的安全, 以及防止数据的错误
提供两个对外的方法:
setXXX() 赋值 和 getXXX() 取值

8.this关键字
本类的对象引用 ==> 也就是谁调用的这个方法, 这个对象就是谁

this. 变量:获取的都是成员变量
this.调用其方法:方法肯定是成员方法
在 一个方法里面:如果成员变量与局部变量的名字 是一样的,局部变量的作用域优先于成员变量

9.封装:
抽取出来的方法就是封装

好处:
1.隐藏内部代码实现的细节
2.代码可重用性
3.提高代码的可维护性
属性的封装   
1.私有化属性  2.给相应的get 和 set 方法

二,总结

第六天的学习感觉越来越抽象了,特别是内存的分析,感觉表面是明白了,但是深入点了解好像又很难理解。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值