1.面向对象与面向过程思想

  什么时面向过程:

    面向过程的每一个步骤和过程,把每一个步骤和过程完成,然后又这些功能相互调用,完成需求

    强调的时过程,所有的事情都需要自己完成

  什么时面向过程:

    面向对象思想就是不断的创建对象,使用对象,指挥对象做事

    是一种更符合我们习惯习惯的思想,可以将复杂的事情简单化.将我们从执行者变成了指挥者的角色发生改变

  

2.类与对象的概述

    环顾周围,你会发现很多对象,比如桌子,椅子,同学,老师等。桌椅属于办公用品,师生都是人类。那么什么是 类呢?什么是对象呢?  

  什么是类
    类:是一组相关属性和行为的集合。可以看成是一类事物的模板,使用事物的属性特征和行为特征来描述该 类事物。
    现实中,描述一类事物:
    属性:就是该事物的状态信息。 行为:就是该事物能够做什么。
    举例:小猫。

    属性:名字、体重、年龄、颜色。 行为:走、跑、叫。 什么是对象
    对象:是一类事物的具体体现。对象是类的一个实例(对象并不是找个女朋友),必然具备该类事物的属性 和行为。
    现实中,一类事物的一个实例:一只小猫。
    举例:一只小猫。

    属性:tom、5kg、2 years、yellow。 行为:溜墙根走、蹦跶的跑、喵喵叫。

3.类与对象的关系

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

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

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

4.类的定义

  

  事物与类的对比 
    现实世界的一类事物:

  属性:事物的状态信息。 行为:事物能够做什么。 Java中用class描述事物也是如此:

  成员变量:对应事物的属性 成员方法:对应事物的行为

类的定义格式:

   public class ClassName {

    //成员变量   //成员方法

  }

    // 定义类:就是定义类的成员,包括成员变量和成员方法。
// 成员变量:和以前定义变量几乎是一样的。只不过位置发生了改变。在类中,方法外。
// 成员方法:和以前定义方法几乎是一样的。只不过把static去掉,static的作用在面向对象后面课程中再详细 讲解。 public class Student {   
//成员变量      
String name;//姓名        
int age;//年龄
    //成员方法        //学习的方法     
    publicvoid study() {
       System.out.println("好好学习,天天向上");
    }
    //吃饭的方法
    publicvoid eat() {
      System.out.println("学习饿了要吃饭");
    }
  }  

5.对象的使用

// 创建对象
// 类名 对象名 = new 类名(); // 使用对象访问类中的成员
// 对象名.成员变量
// 对象名.成员方法 // 对象的使用格式举例
public class Test01_Student {
  public static void main(String[] args) {
    //创建对象格式:类名 对象名 = new 类名();
    Student s = new Student();
    System.out.println("s:"+s);
 //cn.itcast.Student@100363
      //直接输出成员变量值
    System.out.println("姓名:"+s.name);
 //null
    System.out.println("年龄:"+s.age);
 //0
    System.out.println("‐‐‐‐‐‐‐‐‐‐");
      //给成员变量赋值
    s.name = "赵丽颖";
    s.age = 18;
      //再次输出成员变量的值
    System.out.println("姓名:"+s.name)
; //赵丽颖
    System.out.println("年龄:"+s.age);
 //18
    System.out.println("‐‐‐‐‐‐‐‐‐‐");
      //调用成员方法
    s.study();
 // "好好学习,天天向上"
    s.eat();
 // "学习饿了要吃饭"
  }

6.成员变量和局部变量的区别:

  

变量根据定义位置的不同,我们给变量起了不同的名字。如下图所示:

JAVAEE学习day06,面向对象的更多相关文章

  1. 0030 Java学习笔记-面向对象-垃圾回收、(强、软、弱、虚)引用

    垃圾回收特点 垃圾:程序运行过程中,会为对象.数组等分配内存,运行过程中或结束后,这些对象可能就没用了,没有变量再指向它们,这时候,它们就成了垃圾,等着垃圾回收程序的回收再利用 Java的垃圾回收机制 ...

  2. 0028 Java学习笔记-面向对象-Lambda表达式

    匿名内部类与Lambda表达式示例 下面代码来源于:0027 Java学习笔记-面向对象-(非静态.静态.局部.匿名)内部类 package testpack; public class Test1{ ...

  3. 0025 Java学习笔记-面向对象-final修饰符、不可变类

    final关键字可以用于何处 修饰类:该类不可被继承 修饰变量:该变量一经初始化就不能被重新赋值,即使该值跟初始化的值相同或者指向同一个对象,也不可以 类变量: 实例变量: 形参: 注意可以修饰形参 ...

  4. 0013 Java学习笔记-面向对象-static、静态变量、静态方法、静态块、单例类

    static可以修饰哪些成员 成员变量---可以修饰 构造方法---不可以 方法---可以修饰 初始化块---可以修饰 内部类(包括接口.枚举)---可以修饰 总的来说:静态成员不能访问非静态成员 静 ...

  5. C#学习笔记——面向对象、面向组件以及类型基础

    C#学习笔记——面向对象.面向组件以及类型基础 目录 一 面向对象与面向组件 二 基元类型与 new 操作 三 值类型与引用类型 四 类型转换 五 相等性与同一性 六 对象哈希码 一 面向对象与面向组 ...

  6. PHP学习之-面向对象

    PHP学习之-面向对象 1.什么是对象 "世界万物皆对象",一切可以被抽象出来的东西都是对象.像花,草.看不到的"概念"都是对象. 2.对象的基本组成 a.属性 ...

  7. 前端学习:JS(面向对象)代码笔记

    前端学习:JS(面向对象)代码笔记 前端学习:JS面向对象知识学习(图解) 创建类和对象 创建对象方式1调用Object函数 <body> </body> <script ...

  8. Python学习之==>面向对象编程(二)

    一.类的特殊成员 我们在Python学习之==>面向对象编程(一)中已经介绍过了构造方法和析构方法,构造方法是在实例化时自动执行的方法,而析构方法是在实例被销毁的时候被执行,Python类成员中 ...

  9. python开发学习-day06(模块拾忆、面向对象)

    s12-20160130-day06 *:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: ...

随机推荐

  1. 转载【docker】CMD ENTRYPOINT 的使用方法

    原文:https://blog.csdn.net/u010900754/article/details/78526443

  2. android高仿小视频、应用锁、3种存储库、QQ小红点动画、仿支付宝图表等源码

    Android精选源码 android模仿支付宝app"记账本"模块源码 android一个超轻量级剪贴板历史记录管理软件源码 android模仿QQ拖动红点消失动画效果源码 展示 ...

  3. smtp 邮件传输协议 qq版实现

    qq: telnet smtp.qq.com 587 (qq邮箱说明:http://service.mail.qq.com/cgi-bin/help?subtype=1&&id=28& ...

  4. [LC] 392. Is Subsequence

    Given a string s and a string t, check if s is subsequence of t. You may assume that there is only l ...

  5. JavaScript秒转换成天-小时-分钟-秒

    根据时间秒转换成天-小时-分钟-秒 // 秒转换成day.hour.minutes.seconds formatSecond(second: number) { const days = Math.f ...

  6. CRISPR/Cas9|InParanoid|orthoMCL|PanOCT|pan genome|meta genome|Core gene|CVTree3|

    生命组学: 泛基因组学:用于描述一个物种基因组,据细菌基因组动力学,因为细菌的基因漂移使得各个细菌之间的基因组差异很大,(单个细菌之间的基因组差异是以基因为单位的gain&loss,而人类基因 ...

  7. wabpack踩坑

    webpack 打包时会用 NODE_ENV 来标识是生产环境还是开发环境光, "build": "NODE_ENV=production webpack", ...

  8. Js对于数组去重提高效率一些心得

    最近在找工作,好几次面试都问过数组去重的问题.虽然问的都不一样,但是核心思想是没有变的. 第一种是比较常规的方法 思路: 构建一个新的数组存放结果 for循环中每次从原数组中取出一个元素,用这个元素循 ...

  9. Eclipse-project-clean

    project--->clean的原理 eclipse  --->project  ----->clean... 选项将工程中的.class文件删除,同时重新编译工程,类似于jbui ...

  10. ADO.NET中DataTable类的使用

    DataTable类将关系数据表示为表格形式.在创建DataTable之前,必须包含System.Data名称空间.ADO.NET提供了一个DataTable类来独立创建和使用数据表.它也可以和Dat ...