第六天:面向对象的第一天

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 }

时间: 2024-11-06 13:14:48

第六天:面向对象的第一天的相关文章

学习面向对象的第一天,感觉还好啦

今天是在云和学院学习面向对象的第一天,发现程序的写法可以有好多种,但是简单的还是要自己学习,其实都很想用简单的方法,但是还是需要面向对象这个理解的更加明白,或许我真的在这方面只是知道这个名词但是还真的不知道这个怎么整,今天就初步的写下我学习的面向对象的一些基本的知识. <1>首先讲述了类与对象的区别以及类的定义与对象的定义,虽然学习类与对象很抽象,但是我认为首先是自己能够理解类与对象的定义,从定义上在去区别类与定义,这样可能会简单些吧. 类的定义:把具有相同性质和功能的事物所构成的集合就叫做类

修罗场第一天:C#之面向对象基础第一部分

1.关于类和对象 类名下可以是字段,属性,构造函数,函数和索引器.属性的本质就是get和set两个函数. 2.面向对象: 封装:可以减少冗余代码,并且将难以理解的东西封装起来,对外提供一个简单的接口.导致我们可以无需理解好多东西也可以运用好多东西. 继承:在类与类之间提供了关系,为多态打下了基础,其具有当单根性和传递性. 多态:实现方法有虚方法,抽象类以及接口.不同的对象对同一个消息做出不同的响应这个就是多态.多态是基于继承和里氏转换的. 里氏转换:任何子类对象都可以赋值给父类对象      

面向对象程序设计第一单元总结

一.基于度量的程序结构分析 基于度量的程序结构分析,主要运用IntelliJ里面自带的Diagram功能生成类关系图,以及Metrics插件进行复杂度分析. 其中复杂度分析相关指标含义如下: Complexity Metrics(复杂度分析) 这部分我们需要使用的主要是方法和类的复杂度分析. 方法的复杂度分析主要基于循环复杂度的计算.循环复杂度是一种表示程序复杂度的软件度量,由程序流程图中的“基础路径”数量得来. ev(G):即Essentail Complexity,用来表示一个方法的结构化程

javascript面向对象系列第一篇——构造函数和原型对象

× 目录 [1]构造函数 [2]原型对象 [3]总结 前面的话 一般地,javascript使用构造函数和原型对象来进行面向对象编程,它们的表现与其他面向对象编程语言中的类相似又不同.本文将详细介绍如何用构造函数和原型对象来创建对象 构造函数 构造函数是用new创建对象时调用的函数,与普通唯一的区别是构造函数名应该首字母大写 function Person(){ this.age = 30; } var person1 = new Person(); console.log(person1.ag

《面向对象》第一讲

一.为什么需要面向对象?生活中所有的东西都是一个个的对象,为了描述他们方便,我们就把它们使用面向对象的方式来解决. 二.什么是面向对象编程?根据具本的实际生活(业务),设计相对应的类或对象出来,按照生活中的流程或逻辑来操作程序中的类或对象,这样更直观,更方便. 三.面向对象的三大特性:封装.继承.多态.**********************************************************一.类的基本概念(一)类的基本了解.类:自己定义的一种复杂的类型.类一般包括两大

Python基础-第六天-面向对象编程

本篇内容 1.面向对象编程介绍 2.类的定义及各部分的介绍 3.属性 4.方法 5.面向对象的特性-封装 6.面向对象的特性-继承 7.面向对象的特性-多态 8.新式类和经典类 一.面向对象编程介绍 1.编程的原则 无论用什么编程范式来编程都要记住的原则是,避免写重复代码,代码要易扩展.一定要遵循可读性好.易扩展的原则. 2.面向对象编程(Object-Oriented Programming)介绍 OOP编程的主要作用是使代码修改和扩展变的更容易: 面向对象编程是利用类和对象来帮助我们实现功能

Python第六天-----面向对象

说面向对象之前,我们有必要提一下我们的老朋友函数,函数作为面向对象之前的产物,从诞生的那天注定了他的不平凡,早在C语言中根本没有面向对象这种概念,但是依旧C语言活的好好的.所以面向对象并不是必须的,面向对象的存在只是为了简化过程. 我们不妨考虑一下,假设我们不知道面向对象,而此时我们需要写人,此时采用传统函数式编程,我们需要考虑人有多少属性,例如:人有头.胳膊腿等等等等.按照传统函数式的方法我们只能定义字典来去实现 people1 = { "head":1, "eyes&qu

python第六天面向对象的编程

类和实例: 定义 class  类名(父类名):  其中object是所有类的祖先类 __int__方法(两个下划线)表示把属性绑定到类上,如下把name.score等属性绑上去 注意类中所有方法的第一个参数都是self表示对象本身,调用的时候不需要传递这个参数 class Student(object): def __init__(self, name, score): self.name = name self.score = score 限制访问:如果在实例的变量前加上两个下划线,那么此变

java面向对象(第一章课后作业)

1 package com.Class_And_Object; 2 3 public class ZuoYeA01 { 4 5 int a; //定义两个整数 6 int b; 7 String fang; 8 public void jia(){ 9 System.out.println("结果"+(a+b)); 10 } 11 public void jian(){ 12 System.out.println("结果"+(a-b)); 13 } 14 publi