A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 柳柳桑 黑马粉丝团   /  2015-12-24 17:31  /  12535 人查看  /  32 人回复  /   5 人收藏 转载请遵从CC协议 禁止商业使用本文


入学基础day06笔记

06.01_面向对象(面向对象思想概述)(了解)
  • A:面向过程思想概述
    • 第一步
    • 第二步
  • B:面向对象思想概述
    • 找对象(第一步,第二步)
  • C:举例
    • 买煎饼果子
    • 洗衣服
  • D:面向对象思想特点
    • a:是一种更符合我们思想习惯的思想
    • b:可以将复杂的事情简单化
    • c:将我们从执行者变成了指挥者
      • 角色发生了转换
  • E:面向对象开发
    • 就是不断的创建对象,使用对象,指挥对象做事情。
  • F:面向对象设计
    • 其实就是在管理和维护对象之间的关系。
  • G:面向对象特征
    • 封装(encapsulation)
    • 继承(inheritance)
    • 多态(polymorphism)

06.02_面向对象(类与对象概述)(掌握)
  • A:我们学习编程是为了什么
    • 为了把我们日常生活中实物用学习语言描述出来
  • B:我们如何描述现实世界事物
    • 属性        就是该事物的描述信息(事物身上的名词)
    • 行为        就是该事物能够做什么(事物身上的动词)
  • C:Java中最基本的单位是类,Java中用class描述事物也是如此
    • 成员变量        就是事物的属性
    • 成员方法        就是事物的行为
  • D:定义类其实就是定义类的成员(成员变量和成员方法)
    • a:成员变量        和以前定义变量是一样的,只不过位置发生了改变。在类中,方法外。
    • b:成员方法        和以前定义方法是一样的,只不过把static去掉,后面在详细讲解static的作用。
  • E:类和对象的概念
    • a:类:是一组相关的属性和行为的集合
    • b:对象:是该类事物的具体体现
    • c:举例:
      • 类        学生
      • 对象        具体的某个学生就是一个对象

06.03_面向对象(学生类的定义)(掌握)
  • A:学生事物
  • B:学生类
  • C:案例演示
    • 属性:姓名,年龄,性别
    • 行为:学习,睡觉

06.04_面向对象(手机类的定义)(掌握)
  • 模仿学生类,让学生自己完成
    • 属性:品牌(brand)价格(price)
    • 行为:打电话(call),发信息(sendMessage)玩游戏(playGame)

06.05_面向对象(学生类的使用)(掌握)
  • A:文件名问题
    • 在一个java文件中写两个类:一个基本的类,一个测试类。
    • 建议:文件名称和测试类名称一致。
  • B:如何使用对象?
    • 创建对象并使用
    • 格式:类名 对象名 = new 类名();
  • D:如何使用成员变量呢?
    • 对象名.变量名
  • E:如何使用成员方法呢?
    • 对象名.方法名(...)

06.06_面向对象(手机类的使用)(掌握)
  • A:学生自己完成
    • 模仿学生类,让学生自己完成

06.07_面向对象(一个对象的内存图)(掌握)
  • A:画图演示
    • 一个对象

06.08_面向对象(二个对象的内存图)(了解)
  • A:画图演示
    • 二个不同的对象

06.09_面向对象(三个引用两个对象的内存图)(了解)
  • A:画图演示
    • 三个引用,有两个对象的引用指向同一个地址

06.10_面向对象(成员变量和局部变量的区别)(掌握)
  • A:在类中的位置不同
    • 成员变量:在类中方法外
    • 局部变量:在方法定义中或者方法声明上
  • B:在内存中的位置不同
    • 成员变量:在堆内存(成员变量属于对象,对象进堆内存)
    • 局部变量:在栈内存(局部变量属于方法,方法进栈内存)
  • C:生命周期不同
    • 成员变量:随着对象的创建而存在,随着对象的消失而消失
    • 局部变量:随着方法的调用而存在,随着方法的调用完毕而消失
  • D:初始化值不同

    • 成员变量:有默认初始化值
    • 局部变量:没有默认初始化值,必须定义,赋值,然后才能使用。
  • 注意事项:

    • 局部变量名称可以和成员变量名称一样,在方法中使用的时候,采用的是就近原则。
    • 基本数据类型变量包括哪些:byte,short,int,long,float,double,boolean,char
    • 引用数据类型变量包括哪些:数组,类,接口,枚举

06.11_面向对象(方法的形式参数是类名的时候如何调用)(掌握)
  • A:方法的参数是类名public void print(Student s){}//print(new Student());
    • 如果你看到了一个方法的形式参数是一个类类型(引用类型),这里其实需要的是该类的对象。

06.12_面向对象(匿名对象的概述和应用)(掌握)
  • A:什么是匿名对象
    • 没有名字的对象
  • B:匿名对象应用场景
    • a:调用方法,仅仅只调用一次的时候。
      • 那么,这种匿名调用有什么好处吗?
        • 节省代码
      • 注意:调用多次的时候,不适合。匿名对象调用完毕就是垃圾。可以被垃圾回收器回收。
    • b:匿名对象可以作为实际参数传递
  • C:案例演示
    • 匿名对象应用场景

06.13_面向对象(封装的概述)(掌握)
  • A:封装概述

    • 是指隐藏对象的属性和实现细节,仅对外提供公共访问方式。
  • B:封装好处

    • 隐藏实现细节,提供公共的访问方式
    • 提高了代码的复用性
    • 提高安全性。
  • C:封装原则
    • 将不需要对外提供的内容都隐藏起来。
    • 把属性隐藏,提供公共方法对其访问。

06.14_面向对象(private关键字的概述和特点)(掌握)
  • A:人类赋值年龄的问题
  • B:private关键字特点
    • a:是一个权限修饰符
    • b:可以修饰成员变量和成员方法
    • c:被其修饰的成员只能在本类中被访问
  • C:案例演示
    • 封装和private的应用:
    • A:把成员变量用private修饰
    • B:提供对应的getXxx()和setXxx()方法
    • private仅仅是封装的一种体现形式,不能说封装就是私有

06.15_面向对象(this关键字的概述和应用)(掌握)
  • A:this关键字特点
    • 代表当前对象的引用
  • B:案例演示
    • this的应用场景
    • 用来区分成员变量和局部变量重名

06.16_面向对象(手机类代码及其测试)(掌握)
  • A:学生练习

    • 请把手机类写成一个标准类,然后创建对象测试功能。
      1. class Demo2_Phone {
      2.     public static void main(String[] args) {
      3.         Phone p1 = new Phone();
      4.         p1.setBrand("三星");
      5.         p1.setPrice(5288);

      6.         System.out.println(p1.getBrand() + "..." + p1.getPrice());
      7.         p1.call();
      8.         p1.sendMessage();
      9.         p1.playGame();
      10.     }
      11. }
      12. /*
      13. 手机类
      14.     属性:品牌brand,价格price
      15.     行为:打电话call,发短信sendMessage,玩游戏,playGame
      16. */
      17. class Phone {                               //java bean
      18.     private String brand;                   //品牌
      19.     private int price;                      //价格

      20.     public void setBrand(String brand) {    //设置品牌
      21.         this.brand = brand;
      22.     }

      23.     public String getBrand() {              //获取品牌
      24.         return this.brand;                  //this.可以省略,你不加系统会默认给你加
      25.     }

      26.     public void setPrice(int price) {       //设置价格
      27.         this.price = price;
      28.     }

      29.     public int getPrice() {                 //获取价格
      30.         return price;
      31.     }

      32.     public void call() {                    //打电话
      33.         System.out.println("打电话");
      34.     }

      35.     public void sendMessage() {             //发短信
      36.         System.out.println("发短信");
      37.     }

      38.     public void playGame() {                //玩游戏
      39.         System.out.println("玩游戏");
      40.     }
      41. }
      复制代码


06.17_day06总结
  • 把今天的知识点总结一遍。

32 个回复

倒序浏览
{:2_44:}这样也可以啊
回复 使用道具 举报
哇哦,好详细的笔记啊..
回复 使用道具 举报
知识点好全
回复 使用道具 举报
非常详细...
感谢整理
回复 使用道具 举报
来看看笔记复习一下
回复 使用道具 举报
周黎 中级黑马 2016-1-19 00:18:10
7#
谢谢分享,学到了
回复 使用道具 举报
非常详细,厉害很
回复 使用道具 举报
乐龙 中级黑马 2016-2-22 00:04:29
9#
学习学习了...嘿嘿      
回复 使用道具 举报
整理得不错,学习了
回复 使用道具 举报
成员变量        就是事物的属性
成员方法        就是事物的行为
概念老是很模糊
回复 使用道具 举报
day day up!
回复 使用道具 举报
学习学习
回复 使用道具 举报
非常有用,谢谢
回复 使用道具 举报
谢谢这么完整的笔记!
回复 使用道具 举报
{:2_31:}{:2_31:}{:2_33:}
回复 使用道具 举报
非常棒的笔记!
顶!
回复 使用道具 举报

很好的大纲,希望可以帮到我!
回复 使用道具 举报
这个。。。
回复 使用道具 举报
整理的不错 谢谢啦
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 加入黑马