zoukankan      html  css  js  c++  java
  • java笔记12之面向对象初始

    1 概述

      类:是一组相关的属性和行为的集合。是一个抽象的概念。
         对象:是该类事物的具体表现形式。具体存在的个体。

      (1)面向对象思想
          面向对象是基于面向过程的编程思想。
        
          面向过程:强调的是每一个功能的步骤
          面向对象:强调的是对象,然后由对象去调用功能
        
      (2):面向对象的思想特点
          A:是一种更符合我们思想习惯的思想
          B:可以将复杂的事情简单化
          C:将我们从执行者变成了指挥者
            
        举例:
            买电脑:
                面向过程:我的了解电脑--了解我自己的需求--找对应的参数信息--去中关村买电脑--讨价还价--买回电脑
                面向对象:我知道我要买电脑 -- 班长去给我买 -- 班长就买回来了
            吃饭:
                面向过程:去超市买菜--摘菜--洗菜--切菜--炒菜--盛起来--吃
                面向对象:上饭店吃饭,你--服务员(点菜)--厨师(做菜)--服务员(端菜)--吃
    例子:学生类  

     1 /*
     2     事物:
     3         属性    事物的信息描述
     4         行为    事物的功能
     5     
     6     类:
     7         成员变量    事物的属性
     8         成员方法    事物的行为
     9         
    10     定义一个类,其实就是定义该类的成员变量和成员方法。
    11     
    12     案例:我们来完成一个学生类的定义。
    13     
    14     学生事物:
    15         属性:姓名,年龄,地址...
    16         行为:学习,吃饭,睡觉...
    17         
    18     把事物要转换为对应的类:
    19     
    20     学生类:
    21         成员变量:姓名,年龄,地址...
    22         成员方法:学习,吃饭,睡觉...
    23         
    24     成员变量:和以前变量的定义是一样的格式,但是位置不同,在类中方法外。
    25     成员方法:和以前的方法定义是一样的格式,但是今天把static先去掉。
    26     
    27     首先我们应该定义一个类,然后完成类的成员。
    28 */
    29 //这是我的学生类
    30 class Student {
    31     //定义变量
    32     //姓名
    33     String name;
    34     //年龄
    35     int age;
    36     //地址
    37     String address;
    38     
    39     //定义方法
    40     //学习的方法
    41     public void study() {
    42         System.out.println("学生爱学习");
    43     }
    44     
    45     //吃饭的方法
    46     public void eat() {
    47         System.out.println("学习烦了,要打游戏");
    48     }
    49     
    50     //睡觉的方法
    51     public void sleep() {
    52         System.out.println("游戏累了,要睡觉");
    53     }
    54 }

    例子2 手机类

     1 /*
     2     手机类的测试
     3 */
     4 class Phone {
     5     //品牌
     6     String brand;
     7     //价格
     8     int price;
     9     //颜色
    10     String color;
    11     
    12     //打电话的方法
    13     public void call(String name) {
    14         System.out.println("给"+name+"打电话");
    15     }
    16     
    17     //发短信的方法
    18     public void sendMessage() {
    19         System.out.println("群发短信");
    20     }
    21     
    22     //玩游戏的方法
    23     public void playGame() {
    24         System.out.println("玩游戏");
    25     }
    26 }
    27 
    28 class PhoneDemo {
    29     public static void main(String[] args) {
    30         //创建手机对象
    31         //类名 对象名 = new 类名();
    32         Phone p = new Phone();
    33         
    34         //直接输出成员变量值
    35         System.out.println(p.brand+"---"+p.price+"---"+p.color);
    36         
    37         //给成员变量赋值
    38         p.brand = "诺基亚";
    39         p.price = 100;
    40         p.color = "灰色";
    41         //再次输出
    42         System.out.println(p.brand+"---"+p.price+"---"+p.color);
    43         
    44         //调用方法
    45         p.call("林青霞");
    46         p.sendMessage();
    47         p.playGame();
    48     }
    49 }

    3 对象内存图

  • 相关阅读:
    P1182 数列分段`Section II`
    算法整理:Floyd_多源最短路
    【FBI WARNING】递归(高级数据结构的基础)
    【FBI WARNING】DP 从看透到看开
    两个例题
    结构体
    环状序列(Circular Sequence, ACM/ICPC Seoul 2004, UVa1584)
    生成元(Digit Generator, ACM/ICPC Seoul 2005, UVa1583)
    猜数字游戏的提示(Master-Mind Hints, UVa 340)
    回文词(Palindromes, UVa401)
  • 原文地址:https://www.cnblogs.com/lanjianhappy/p/6268710.html
Copyright © 2011-2022 走看看