一个Java类带你面向对象入门

一个Java类带你面向对象入门,第1张

一个Java类带你面向对象入门

面向对象入门
  • 前言
  • 一、面向过程与对象
  • 二、面向对象三要素
    • A、一个类认识面向对象
  • 三、构造器
    • 1、形式
    • 2、四要素
    • 3、重载
  • 总结
  • 参考文献

前言

1)面向对象是一种设计模式,如果你需要设计一个东西,就可以先抽象为一个类。
2)例如设计一辆车,你需要设计车的静态特征:轮子、方向盘、发动机等等;你需要设计车的动态行为:启动车、加速、减速等。
3)一个Java类带你入门面向对象。

一、面向过程与对象

1)区别
面向过程:一种执行模式,按一定步骤去执行。如造车,装车骨架、装发动机、装方向盘等等。
面向对象,一种设计模式,设计需要先抽象,再创新。如造车,轮子、发动机…

2)联系
两者相互协作,通过面向对象设计物体,再通过面向过程完成目的。如先设计车,再造车。(宏观上面向对象的设计,微观上面向过程的执行。)

二、面向对象三要素

1)静态特征
对物体特征的抽象过程,向上抽象出物体共同特征。
2)动态行为
对物体行为的抽象过程,向上抽象出物体共同行为。
3)构造
抽象对应具体,类是一个抽象的过程,将类实例化就是一个具体的过程,该过程称为构造对象,需要构造器。

A、一个类认识面向对象
package com.xhu.java;

import java.util.Date;
import java.util.GregorianCalendar;


public class Student {
    

    public String idCard;//每个学生都有身份z号码
    public String name;//每个学生都有姓名
    public Date birth;//每个学生都有出生时间

    

    public void eat() {//每个学生都有吃饭的行为。
        //面向过程去编写吃饭这个行为。
        System.out.println("洗手");
        System.out.println("吃饭");
        System.out.println("洗碗");
    }

    public void sleep() {//每个学生都有睡觉的行为。
        //面向过程去编写睡觉这个行为。
        System.out.println("洗漱");
        System.out.println("上床");
        System.out.println("睡觉");
    }

    
    public void updateName(String name) {//每个学生可以修改他的名字
        this.name = name;
    }

    
    public Student(String idCard, String name, Date birth) {//构造一个真实的对象,对他的基本特征设定一个具体的值
        this.idCard = idCard;
        this.name = name;
        this.birth = birth;
    }
    
    public static void main(String[] args) {
        //通过new构造器来向下构造一个具体的对象
        Student s = new Student("111111111111","Jack马", new GregorianCalendar().getTime());
        //1.吃饭
        s.eat();
        //2.睡觉
        s.sleep();
        //3.去公安局改个名字
        s.updateName("pony马");
        //4.看看自己的新名字
        System.out.println(s.name);
    }
}

三、构造器 1、形式
public[private] ClassName(){
}
2、四要素

1)通过new关键字调用。
2)构造器是特殊函数,无返回值,但是可给对象分配实际内存。不能显示定义返回类型,也不能return this,只可以用return结束函数,一般省略。
3)没有构造器,则编译器定义无参构造函数,若自己显示定义,则编译器不再提供。
4)构造器方法名必须与类名一致。

3、重载

根据实际参数需要进行函数重载。

    public Student(String idCard, String name, Date birth) {//构造一个真实的对象,对他的基本特征设定一个具体的值
        this.idCard = idCard;
        this.name = name;
        this.birth = birth;
    }
    public Student(){
        
    }
总结

1)面向对象与过程,设计模式与执行模式。
2)面向对象三要素,如何抽象与具体?

参考文献

[1] 尚硅谷Java SE–高淇

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5075096.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-16
下一篇 2022-11-16

发表评论

登录后才能评论

评论列表(0条)

保存