面向对象

[toc]

一、面向对象的基本概述

基本概念

面向过程:

所谓面向过程:将要实现的功能描述为从一个开始到结束按部就班的连续步骤;依次逐步完成这些步骤,如果某一步难度较大,又可以将该步骤再次细化为若干子步骤,以此类推,一直到结束得到想要的结果;程序的主体是函数,一个函数就是封装起来的模块,可以实现一定的功能(某一动作),各个子步骤往往就是通过各个函数来完成的,从而实现代码的重用

面向对象:

所谓面向对象就是:在编程的时候尽可能去模拟真实的现实世界,按照现实世界中的逻辑处理问题,分析问题中参与的有哪些实体,这些实体应该有什么属性和方法,我们如何通过这些实体的属性和方法去解决问题。

实体是动作的支配者,没有实体就肯定没有动作发生。任何功能的实现都是依赖于一个具体的实体的"动作,操作,行动"。

面向对象可以看作是一个又一个的实体在发挥其各自“能力“并在内部进行协调有序的调用过程。分析过程为:

  • 分析有哪些动作是由哪些实体发出 的
  • 定义这些实体,为其增加相应的属性和功能
  • 让实体去执行相应的功能和动作

类与对象的关系

类:用Java语言对现实生活中的事物进行描述。一般关注两个方面,属性,行为(动作,功能,函数);

   只要明确该事物的属性和行为并定义在类中即可。(描述用)

对象:就是该类事物实实在在存在的个体。用new关键字来创建该类事物的对象(具体怎么描述的,是个实例)

注意:类中怎么没有定义主函数?

     主函数是为了保证所在类的独立运行,是程序的入口,被jvm调用;主函数的存在,仅为该类是否需要独立运行,如果不需要,主函数不用定义的。

2. 封装

概念:隐藏对象的属性和实现细节,仅对外提供公共访问方式。

好处:

  • 将变化隔离
  • 便于使用
  • 提高重用性
  • 提高安全性

封装原则:

  • 将不需要对外提供的内容都隐藏起来
  • 吧属性都隐藏起来,提供公共方法对其访问

关键字 private:一个权限修饰符,用于修饰成员,使其私有化,私有内容只有本类有效。

public class Person {

    private String name;
    private int gender;
    private int age;

    public String getName() {
        return name;
    }

    public String getGender() {
        return gender == 0 ? "man" : "woman";
    }

    public void work() {
        if (18 <= age && age <= 50) {
            System.out.println(name + " is working very hard!");
        } else {
            System.out.println(name + " can't work any more!");
        }
    }
}

3. 继承

4. 多态

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容