2019-10-18-21:35:36

面向对象


学面向对象前要先知道什么叫面向过程,了解了什么叫面向过程才容易理解面向对象

面向过程(强调步骤)

  概念:当需要实现一个功能的时候,每一个具体的步骤都要亲历亲为,详细处理每一个细节的过程称为面向过程

  如:把衣服脱下来==>找一个盆==>放点洗衣粉==>加点水==>浸泡==>洗衣服==>拧干==>晾晒

面向对象(强调对象)

  概念:当需要实现一个功能的时候,不关系具体的步骤,而是找一个已经具有该功能的人来实现该过程.

  如:把衣服脱下来==>放洗衣机里==>启动洗衣机==>晾晒

  特点:面向对象思想是一种更符合我们思考习惯的思想,它可以把复杂的事情简单化,让我们从执行者变成指挥者

  三大基本特征:封装、继承和多态

  概念:是一组相关属性和行为的集合,可以看成是一类事物的模板,使用事物的属性特征和行为特征来描述该类事物

  属性:事物的状态信息

  行为:事物能够做什么

对象

  概念:是一类事物的具体体现,对象是类的一个实例,必然具备该类事物的属性和行为

类和对象的关系

  类是对一类事物的描述,是抽象的

  对象是一类事物的实例,是具体的

  类是对象的模板,对象是类的实体

类的定义格式

  public class Person{

  //成员变量(属性)

  //成员方法(行为)

  }

定义类

  概念:就是定义类的成员,包括成员变量和成员方法

成员变量

  概念:和定义变量几乎一样,只不过位置发生了变化,在类中,方法外

成员方法

  概念:和定义方法几乎一样,只不过把static去掉

  

注意事项

  1.成员变量是直接定义在类当中的,在方法外边

  2.成员方法不要写static关键字

类的使用方法

  通常情况下,一个类并不能直接使用,需要根据类创建一个对象, 才能使用。
  1.导包:也就是指出需要使用的类,在什么位置.
    import包名称.类名称;
  对于和当前类属于同一个包的情况,可以省略导包语句不写。
  

  2.创建,格式:
    类名称对象名。new类名称();
    Student stu = new Student();

  3.使用,分为两种情况:

    使用成员变量:对象名.成员变量名

    使用成员方法:对象名.成员方法名(参数)

    (也就是,想用谁,就用对象名点儿谁)

  注意事项:
    如果成员变量没有进行赋值,那么将会有一个默认值,规则和数组一样。

成员变量和局部变量的区别

  1.定义的位置不一样【重点】
    局部变量:在方法的内部
    成员变量:在方法的外部,直接写在类当中
  2.作用范围不一样【重点】
    局部变量:只有方法当中才可以使用,出了方法就不能再用
    成员变量:整个类全都可以通用。
  3. 默认值不一样【重点】
    局部变量:没有默认值,如果要想使用,必须手动进行赋值
    成员变量:如果没有赋值,会有默认值,规则和数组一样
  4.内存的位置不一样(了解)
    局部变量,位于栈内存
    成员变量:位于堆内存
  5.生命周期不一样(了解)
    局部变量,随着方法进栈而诞生,随着方法出栈而消失
    成员变量:随着对象创建而诞生,随着对象被垃圾回收而消失

代码执行顺序

  

  

Java之路---Day04的更多相关文章

  1. Java之路——名词解释(一)

    一.开篇 许多人在初接触Java的时候,都会被各种Java的英文缩写名词给弄得头晕脑胀.看一个技术,内容里又会有一堆其他的技术名词,看了半天不知所云.尝试去查一下这些名词的解释,除了非常学术性的解释之 ...

  2. Java之路——敬JAVA初学者(作者:MoMo)

    作为一名大四的毕业生,大学三年过,有得有失.作为一个喜欢编程,喜欢JAVA的人,自学其实是一件美事,很有意思的事.要是能再找个女朋友一起学.嘿嘿,就不枉在大学走了一遭啊!    要离开学校了,还是想留 ...

  3. Java之路——环境配置与编译运行

    本文大纲 一.开篇 二.JDK下载 三.JDK安装 四.环境配置 五.初识Java编译 六.Java与Javac 七.第一个Java程序 八.总结 九.参考资料 一.开篇 通过对之前Java之路的了解 ...

  4. Java之路 ——初识Eclipse

    零.大纲 一.前言 二.获取Eclipse 三.运行Eclipse 四.创建及运行第一个Java Project 五.界面介绍 六.如何调试 七.获取插件 八.Eclipse 快捷键 九.总结 一.前 ...

  5. 2017-2018-1 JAVA实验站 冲刺 day04

    2017-2018-1 JAVA实验站 冲刺 day04 各个成员今日完成的任务 小组成员 今日工作 完成进度 张韵琪 写博客.进行工作总结 100% 齐力锋 找背景音乐 100% 张浩林 游戏操作说 ...

  6. 转行自学 Java 之路的纪念册

    前言: 最近在重读<小狗钱钱>,我对其中的"成功日记"概念特别深刻,偶尔也会记一记“成功日记”. 想了想人生走找到今天,阶段性“成功日记”有没有呢? 有的!几年前的一篇 ...

  7. 是什么让我走上Java之路?

    选择方向,很多人都为根据自己的兴趣爱好和自己的能力所长而作出选择.那么是什么让我走上Java之路? 整个高三我有两门课程没有听过课,一门是数学,一门是物理.当时候物理没有听课的原因很简单,我有一本&l ...

  8. 我的Java之路

    前言: 之前在学习python,刚开始的时候跟多数小白一样学习一些基础的知识,比如数据类型,用法,基本的语言结构,学了一段时间实在是学习不下去了,真是太TMD的无聊了,很多方法都记不住,也不知道学了这 ...

  9. Java之路——初识Eclipse

    零.大纲 一.前言 二.获取Eclipse 三.运行Eclipse 四.创建及运行第一个Java Project 五.界面介绍 六.如何调试 七.获取插件 八.Eclipse 快捷键 九.总结 一.前 ...

随机推荐

  1. eggjs的参数校验模块egg-validate的使用和进一步定制化升级

    简单讲一下这个egg-validate egg-validate是基于parameter的. 安装 npm install --save egg-validate 启用 // config/plugi ...

  2. 类中嵌套定义指向自身的引用(C、C++、C#)或指针(C、C++)

    在定义类的时候,类中可以嵌套定义指向自身的引用(C.C++.C#)或指针(C.C++).详见代码: Node类: using System; using System.Collections.Gene ...

  3. hg19基因组 | 功能区域 | 位置提取

    如何获取hg19的CDS.UTR.intergenic.intron等的位置信息? 参考手册: Hg19 regions for Intergenic, Promoters, Enhancer, Ex ...

  4. 012 webpack中的router

    一:准备工作 1.App.vue <template> <div> <h1>这是 App 组件</h1> </div> </templ ...

  5. JDK性能监控命令

    阅读原文 查看虚拟机进程:jps 命令 jps 命令可以列出所有的 Java 进程.如果 jps 不加任何参数,可以列出 Java 程序的进程 ID 以及 Main 函数短名称,如下所示. $ jps ...

  6. 阶段一-01.万丈高楼,地基首要-第3章 用户登录注册模块开发-3-8 优化Swagger2显示

    左侧的全是英文 忽略api 把HelloController也忽略掉 重启api的服务,刷新页面.只剩下了passport的Controller 给passport接口加上注解. 重启服务,并刷新页面 ...

  7. [Linux]Linux下samba创建共享文件

    1. 安装samba服务 yum install -y samba 2. 创建需要共享的目录 在目录/home/xxxx/share xxx为用户名 mkdir share 修改该目录权限(上层文件夹 ...

  8. Spring Boot启动时出现WARN:No MyBatis mapper was found in

    今天发现spring-boot继承mybatis启动时老是出现WARN: org.mybatis.spring.mapper.ClassPathMapperScanner - No MyBatis m ...

  9. web基础---->script标签的特殊使用

    今天要讲的就是怎样使用<script>去请求一个servlet,加载一些js资源以及额外的逻辑处理: 目录: JS的引入的几种方式 在script的标签中引入Servlet 动态引入JS的 ...

  10. proc 下创建与应用交互的可读写节点

    内核版本:Linux-4.14 随便写了个 proc 下节点的测试程序,可以用来与应用层交互. 也可以单独的用来做调试打印使用,例如封装个 my_printk 将信息单独存在节点内,然后可以在应用层 ...