面向对象思想概述
来源:互联网 发布:睡觉流口水 知乎 编辑:程序博客网 时间:2024/06/05 15:20
1.概念
面向对象是一种基于面向过程的编程思想;
面向过程: 强调的是每一个功能的步骤;
面向对象: 强调的是对象,由对象去调用功能;
2.思想特点
- 是一种更符合我们思想习惯的思想;
- 可以将复杂的事情简单化;
- 我们由事情的行动者变成了执行者;
3.典型案例–把大象装进冰箱
(1).面向过程
都有哪些动作呢?
打开冰箱门
装进大象
关闭冰箱门
代码体现
class Demo { public static void main(String[] args) { /* System.out.println("打开冰箱门"); //打开冰箱门的东西,我现在仅仅是为了演示,就写了一个输出语句 //其实,它可能需要做很多操作。 //这个时候代码就比较多一些了 //假设我要多次打开冰箱门, //代码一多,每次都写一遍,麻烦不 //我们就应该用方法改进 System.out.println("装进大象"); System.out.println("关闭冰箱门"); */ //写了方法以后,调用就改变了 open(); in(); close(); } public static void open() { System.out.println("打开冰箱门"); } public static void in() { System.out.println("装进大象"); } public static void close() { System.out.println("关闭冰箱门"); }}
(2).面向对象
我们怎么才能更符合面向对象思想呢?把大象装进冰箱的分析
- 都有哪些类呢?
大象
冰箱
Demo
- 每个类都有哪些东西呢?
大象—> 进去()
冰箱—> 开门(),关门()
Demo—> main()
- 类和类之间的关系是什么?
Demo中使用冰箱和大象的功能
代码体现
class 大象 { public static void in() { System.out.println("装进大象"); }}class 冰箱 { public static void open() { System.out.println("打开冰箱门"); } public static void close() { System.out.println("关闭冰箱门"); }}class Demo { public static void main(String[] args) { 冰箱调用开门 大象调用进去 冰箱调用关门 }}
4.类和对象
(1).现实中的事物
属性
事物的基本描述
行为
事物的功能
(2).Java语言中,最基本的单位是类.所以,我们要用类来体现事物.
我们学习编程语言,是为了模拟现实世界的事物的。
而我们学习的编程语言Java中最基本的单位是:类。
所以,我们就应该把事物通过类来体现出来:
由此,我们就得到了现实世界事物和类的对应关系(3)
(3).类
成员变量
事物属性
成员方法
事物行为
(4).类和对象的关系
类:是一组相关属性和行为的集合,是一个抽象的概念.
对象:是该类事物的具体实现,是一个具体的实例.
5.类的定义和使用
(1).类的定义
成员变量
定义格式和局部变量相同,就是位置不同,在类中方法外.
成员方法
定义格式和局部方法相同,就是去掉了static.
代码示例
//这是学生类class Student { //定义变量 //姓名 String name; //年龄 int age; //地址 String address; //定义方法 //学习的方法 public void study() { System.out.println("学生爱学习"); } //吃饭的方法 public void eat() { System.out.println("学习饿了,要吃饭"); } //睡觉的方法 public void sleep() { System.out.println("学习累了,要睡觉"); }}
(2).使用类的内容
创建对象,格式
类名 对象名 = new 类名();
如何使用成员变量和成员方法
对象名.成员变量
对象名.方法名()
代码示例
//这是学生测试类class StudentDemo { public static void main(String[] args) { //类名 对象名 = new 类名(); Student s = new Student(); //输出成员变量值 //System.out.println(s.name); //System.out.println(s.age); //System.out.println(s.address); //改进写法 System.out.println(s.name+"---"+s.age+"---"+s.address); //给成员变量赋值 s.name = "林青霞"; s.age = 27; s.address = "北京"; //赋值后的输出 System.out.println(s.name+"---"+s.age+"---"+s.address); //调用方法 s.study(); s.eat(); s.sleep(); }}
6.创建对象内存图
(1).一个对象的内存图
(2).二个对象的内存图
(3).三个对象的内存图
7.Java程序的开发,设计和特征
(1).开发
就是不断的创建对象,通过对象调用功能
(2).设计
就是管理和维护对象间的关系
(3).特征
封装
继承
多态
0 0
- 面向对象思想概述
- 面向对象思想概述
- 面向对象思想概述
- 面向对象思想概述
- 面向对象(思想引入和面向过程思想概述)
- 动力节点——面向对象思想概述(五)
- Java基础(五)OOP面向对象之(三) 面向对象思想概述(续)
- 面向对象思想
- 面向对象程序设计思想
- 基础知识----面向对象思想
- 面向对象核心思想
- 面向对象思想
- 面向对象的思想
- 面向对象的思想
- 面向对象 思想题
- QTP面向对象思想
- 什么是面向对象思想
- 面向对象思想
- Qt download
- 关于wsdl生成客户端代码中的JAXBElement<String>
- 生活服务类型-项目知识点总结
- Django快速开发web前端
- Disable Keyboard Shortcuts and Combination Keys with C# (2): Disable Win + L
- 面向对象思想概述
- 今天第一天写博客,随写
- 远程DNS缓存攻击__山东大学网络攻防实验三
- NFS /etc/exports 設定檔的語法與參數
- maven私服nexus配置
- uboot分析一
- VMware下基于RHEL_6.0虚拟机的samba服务器安装
- java实现获取鼠标在屏幕上的坐标
- blog书写专栏,how