java基础六(面向对象)

来源:互联网 发布:删除mac管理员账户 编辑:程序博客网 时间:2024/05/20 09:23
面向对象
            (1)面向对象

                      面向对象是基于面向过程的编程思想

                  面向过程:强调的是每一个功能的步骤

                  面向对象:强调的是对象,然后由对象去调用功能

            (2)面向对象的思想特点
                      A:是一种更符合我们思考习惯的思想
                      B:把复杂的事情简单化
                      C:让我们从执行者变成了指挥者

                举例:

                         买电脑

面向过程:自己去买

                                        面向对象:让别人替我买

                         洗衣服

                                        面向对象:洗衣机

                         做饭
                          ..
                      万事万物皆对象
         (3)把大象装进冰箱

                A:面向过程实现

import java.util.Scanner;/* 面向过程     A:打开冰箱门     B:装进大象     C:关闭冰箱门 */public class Demo1 {public static void main(String[] args) {// TODO Auto-generated method stubSystem.out.println("打开冰箱门");//打开冰箱门的东西,现在仅仅是为了演示,就写了一个输出语句//其实,他可能需要做很多操作//这个时候代码就比较多,而且可能会重复使用//应该用方法改进System.out.println("装进大象");System.out.println("关闭冰箱门");//面向过程open();in();close();}public static void open(){System.out.println("打开冰箱门");}public static void in(){System.out.println("装进大象");}public static void close(){System.out.println("关闭冰箱门");}}

                B:面向对象实现

                              注意:如何让我们的操作更符合面向对象思想呢?

                                     A:有哪些类

                                     B:每个类有哪些成员

                                     C:类与类的关系(相互调用)

import java.util.Scanner;/*面向对象: 如何分析有哪些类?UML:名词提取法有哪些类:大象,冰箱,demo每个类有哪些东西;大象:进口冰箱:开口,关口demo:main类和类之间的关系demo中使用大象和冰箱类的功能 */public class Demo1 {public static void main(String[] args) {// TODO Auto-generated method stubBingxiang b = new Bingxiang();b.open();Daxiang ele = new Daxiang();ele.in();b.close();}}class Daxiang{public  void in(){System.out.println("把大象装进冰箱");}}class Bingxiang{public  void open(){System.out.println("打开冰箱门");}public  void close(){System.out.println("关闭冰箱门");}}

类与对象

         A:现实世界的事物
                属性:事物的基本描述
                行为:事物的功能
        B:Java语言中最基本的单位是类。所以,我们要用类来体现事物
        C:类
                成员变量:事物属性
                成员方法:事物行为
        D:类:是一组相关的属性和行为的集合。是一个抽象的概念。
                  对象:是该类事物的具体存在,是一个具体的实例。(对象)
 
                    举例:
                         学生:类       
                         班长:对象
     (5)类的定义及使用
          A:类的定义
                 成员变量定义格式和以前一样,就是位置不同,在类中,方法外。
                 成员方法定义格式和以前一样,就是去掉了static。
          B:使用类的内容
                   a:创建对象? 格式
                             类名 对象名 =  new 类名();
                   b:如何使用成员变量和成员方法呢
                            对象名.成员变量
                            对象名.成员方法()
   (6)案例:

             A:学生类的定义和使用

import java.util.Scanner;/*学生事物:属性(成员变量):姓名,年龄,地址行为(成员方法):学习,吃饭,睡觉如何使用成员变量:对象名.变量名如何使用成员方法:对象名.方法名() */public class Demo1 {public static void main(String[] args) {// TODO Auto-generated method stubStudent stu = new Student();String name = stu.name;System.out.println(name);name="赋值了";System.out.println(name);stu.study();}}class Student{String name;int age;String address;public void study(){System.out.println("学生爱学习");}public void eat(){System.out.println("学生饿了,要吃饭");}public void sleep(){System.out.println("学习累了,要睡觉");}}

             B:手机类的定义和使用

/*手机:属性:品牌,价格,颜色行为:打电话 发短信 玩游戏 */public class Demo1 {public static void main(String[] args) {// TODO Auto-generated method stubPhone phone = new Phone();String name = "lily";phone.callphone(name);phone.color="red";System.out.println(phone.color);}}class Phone{String brand;int price;String color;public void callphone(String name){System.out.println("给"+name+"打电话");}public void sendMessage(){System.out.println("群发短信");}public void playGame(){System.out.println("玩游戏");}}

    (7)内存图

             A:一个对象的内存图


             B:二个对象的内存图


             C:三个对象的内存图


     (8)Java程序的开发,设计和特征
             A:开发:就是不断的创建对象,通过对象调用功能
             B:设计:就是管理和维护对象间的关系
             C:特征
                     a:封装(encapsulation)
                     b:继承(inheritance)
                     c:多态(polymorphism)
0 0
原创粉丝点击