第六天:面向对象的第一天
1:面向过程与面向对象的区别?
1.1:面向过程思想中,整个过程用户都需要参与。但是面向对象,用户只调用别人的一些功能,至于这些功能是如何实现的,用户不需要知道。
例子:需求:将饭盒放进冰箱。
面向过程:
1:我打开冰箱。
2:将饭盒放进去
3:我关闭冰箱。
面向对象:
1:先分析一些,这个需求中有多少个对象:冰箱,饭盒。
2:对象有什么属性或者行为。:冰箱:打开,关闭。
3:对象之间有什么关系
1:我调用冰箱打开的功能。
2:我放饭盒进去。
3:调用冰箱的关闭的功能。
我的见解:面向过程是包含在面向对象中的,只不过过程被封装到了一个个的方法里面
2:面向对象的分析过程
2.1:先分析一些需求中有哪些对象。
2.2:对象有什么属性或者行为。
2.3:对象与对象有什么关系。
3:对象是什么?类是什么?
类:种类,它是多个对象的抽象。(比如汽车的设计图纸就是一个类,看不到实物的)
对象:类的具体事物。世界万事万物都是对象。类是对象的抽象,对象是类的具体事物。(被设计出来的汽车就是一个对象,看得到实物的)
4:
4.1:描述一个嫌疑犯。
年龄:20左右,高度:170-175.性别:男,脸型:方,口音:四川口音。身材:偏瘦。 左撇子。:特征
走路:内八。:行为。
锁定一个对象:特征和行为。
4.2:类的定义。
4.3:如何访问对象的属性和对象的方法
访问对象的属性 :对象名.属性
访问对象的方法:对象名.方法名()
4.4:构造方法。
4.1:构造方法的语法.
1:方法名跟类名一样。
2:没有返回值。不用写返回值类型。
4.2:为什么要有构造方法呢?构造方法的作用是什么?
作用:对对象的属性进行初始化。必须是创建对象的时候才可以调用。
4.3:构造方法在调用上跟普通方法有什么不同?
构造方法只能在创建对象的时候调用,后面是不能够调用的。也就是说只能在new的时候才调用。
如果一个类中没有写构造方法,那么会自动添加一个无参的构造方法。如果写了构造方法,那么久不会添加构造方法。只要是类,就一定有构造方法。
总结:
1:面向对象的分析过程。
1.1分析这个需求有哪些对象
1.2分析各个对象有哪些属性
1.3 分析各个对象之间有什么联系
2:创建写一个类
class 类名
3:如何创建一个对象
用 new 构造函数 创建
4:如何访问对象的属性和方法。
对象.属性, 对象.方法
5:构造方法的定义以及它跟普通方法有什么区别:方法名,返回值,作用,调用上。
构造函数的方法名和类型相同,没有返回值,用作初始化对象属性,只能用new 关键字来调用。
6:构造方法的重载:方法的重载。
参数列表不同
7:成员变量和局部变量的区别。
明天:
1:内存分析。
2:基本数据类型参数和引用数据类型参数的传递。
3:this和封装。
1 /*需求:有一个人的左手放的是红桃A,右手放的是方片K,要求将 2 左手和右手的内容交换。面向对象思想来考虑。*/ 3 class Person 4 { 5 String lHand; 6 String rHand; 7 8 String temp; 9 10 void change(){ 11 temp = lHand; 12 lHand = rHand; 13 rHand = temp; 14 } 15 } 16 17 18 class Test01 19 { 20 public static void main(String[] args) 21 { 22 Person p = new Person(); 23 24 p.lHand = "A"; 25 p.rHand = "K"; 26 27 System.out.println("左手:"+p.lHand+", 右手:"+p.rHand); 28 p.change(); 29 System.out.println("左手:"+p.lHand+", 右手:"+p.rHand); 30 } 31 }