理解面向对象

关键:让每一个对象负责执行一组相关任务

面向过程:算法第一,数据第二

面向对象:数据第一,算法第一

特点:

  万物皆对象

程序是一组对象彼此之间在发送消息

  每个对象都有自己的内存占用,可以组装成更大的对象

每个对象都有类型,特定类型的所有对象可以接受相同消息

类和对象的概念,区别和联系

  类

    类是创建对象的模板和蓝图

    类是一组类似对象的共同抽象定义

  对象

    对象是类的实例化结果

    对象是实实在在的存在,代表现实世界的某一事物

对象的两个关键特性

  行为:对象能干什么

  状态:对象的属性和行为的结果

类的建模:抽象和封装的过程

定义一个类的步骤

  定义类名

  编写类的字段代表属性

  编写类的方法代表行为

抽象:去掉不关注的,次要的信息而保留重要的信息

封装:信息打包

将抽象出来的属性和行为包装在一个类中.



对象的创建

使用new关键字创建对象

类名 引用变量=new 类名(); --->对象

通过 ". "操作对象

对象名.属性

对象名.方法名 

方法定义和调用

方法类型+方法签名+方法体

定义类的方法

 

 访问修饰符  类型  方法名(参数列表){

       //方法体
}  

方法分类

  1. void   返回值为空
  2. 带具体返回类型的方法
  3. 不带参数的方法
  4. 带参数的方法

return返回值

方法内可以调用其他方法

传递基本数据类型   实际变量不改变

传递引用数据类型  实际引用变量改变


变量的作用域


属性(字段)

局部变量(语句块中使用)

最新文章

  1. HDU 2256 Problem of Precision 数论矩阵快速幂
  2. android基础开发之RecycleView(1)---基本使用方式
  3. Discuz 3.X 整合 CAS 的方法
  4. Linux 下面对物理地址的访问
  5. java Serialization and Deserializaton
  6. csc.exe的环境变量设置
  7. Andriod Studio安装教程
  8. 9-Unittest+HTMLTestRunner不能生成报告解决方法
  9. 教你用Python创建瀑布图
  10. 解决 Excel2013打开提示 文件格式和扩展名不匹配。文件可能已损坏或不安全
  11. 进程间通信之——队列Queue
  12. BZOJ4974 八月月赛 Problem D 字符串大师 KMP
  13. cocos2dx 3.x(打开网页webView)
  14. array 数组去重 过滤空值等方法
  15. 前端学PHP之面向对象系列第四篇-----关键字
  16. java基础-day26
  17. Wix中注册c#开发的Activex控件
  18. MapWinGIS------引发类型为“System.Windows.Forms.AxHost+InvalidActiveXStateException”的异常
  19. CentOS 7 隐藏任务栏和顶栏
  20. 铁轨(rails, ACM/ICPC CERC 1997,Uva 514)

热门文章

  1. Hadoop IO 特性详解(1)【数据完整性】
  2. 【笔记】Python3导入包规则
  3. C# WPF 如何禁止窗口拖到屏幕边缘自动最大化
  4. jodatime 计算时间差_统计程序运行耗时
  5. MYSQL基础常识
  6. 简单描述如何安装配置一个apache开源版hadoop,只描述即可,无需列出完整步骤,能列出步骤更好
  7. Chrome谷歌浏览器调试
  8. 【产品经理】产品经理不懂API接口是什么,怎么和程序员做朋友?
  9. redis的安装,以及主从实现同步
  10. 微信小程序之上拉加载更多