day06笔记:
Java中参数传递问题:
基本数据类型:形式参数的改变对实际参数没有影响。
引用类型数据:形式参数的改变直接影响实际参数Java中只有值传递,引用数据类型传递的也是地址值。
回答面向对象:
什么是面向对象:
1、面向过程:是以函数为基础,完成各种操作。强调的是过程、功能过程;
2、面向对象:以对象为基础。强调的是对象、结果;
3、他们俩其实都是一种思想;二者是相对而言的;面向对象基于面向过程。
面向对象的思想特点:
1、是一种更符合人们思考习惯的思想
2、可以将复杂问题简单化
3、将程序员从执行者转变成指挥者
面向对象的思想特征:
封装 继承 多态
招人示例:
面向过程:
面向对象:
以后做任何事情先找对象,让对象做事情。如果找不到就自己造对象,然后自己用,也可以让别人用。
怎么样才能让我们的操作更加符合面向对象的思想呢?
1、分析包含的对象有哪些
2、明确对象能做什么
3、明确各个对象之间的关系
步骤:
1、找对象 名次提取法--UML(统一建模语言)
2、每个对象应该有什么
3、相互之间的关系
面向对象的开发过程:其实就是不断地创建对象,使用对象,指挥对象做事情;
面向对象的设计过程:其实就是在管理维护对象之间的关系
类与对象的关系:
类:就是成员变量(属性(名次))和成员方法(行为,函数,动词)的集合,是一个抽象的概念。
对象:就是类的具体的存在,体现。
创建对象:类 对象名 = new类();
成员变量的使用:对象名.成员变量;
成员方法的使用:对象名.成员方法;
在一个.java源文件中可以定义多个类,但是只能定义一个被public修饰的类,并且这个类的类名和文件名对应一致
static 关键字 修饰的方法,会随着类的加载直接加载进方法区。
其他的方法只有在执行到的时候才会加载到方法区
成员变量和局部变量的区别:
A:定义位置区别
成员变量 在类中
局部变量 方法中 或者方法的形式参数
B:初始化值的区别:
成员变量:有默认初始化值
局部变量:没有初始化值,先赋值才能用
C:存储位置:
成员变量:在堆中随着对象的存在而存在,对象消失它也消失
局部变量:存储在栈中,随着方法的调用儿存在,随着方法的调用完毕而消失
变量的使用:先在局部找,再在成员上找,如果没有就报错;遵循就近原则
匿名对象:是没有名字的对象
格式:new 类名();同样可以通过 ‘ . ’去调用方法。
应用场景:
A:当对对象方法仅调用一次的时候(用完之后就是垃圾)
B:匿名对象可以作为实际参数进行传递
|
|