JavaSE什么是面向对象?

重点!!!面向对象

面向过程与面向对象

面向过程和面向对象都是程序设计的一种风格(思想);

面向过程的程序思想

​ 面向过程编程是一种程序设计范式,它将程序分解为一系列的步骤或过程,每个过程依次执行以完成特定的任务。在面向过程编程中,数据和方法是分离的,程序主要关注解决问题的步骤和流程,而不是对象之间的交互。

  • 关注焦点是过程:过程就是操作数据的步骤。如果某个过程的实现代码重复出现,那么就可以把这个过程抽取成一个函数,这样就可以大大简化沉余代码,便于维护。
  • 是以函数(一个一个的功能)为结构进行代码组织
  • 相对于面向对象语言,扩展能力差,后期维护难度较大

面向对象程序思想

​ 面向对象编程(Object-Oriented Programming,OOP)是一种程序设计范式,它以对象为基本单元,将数据和操作数据的方法封装在对象中,通过对象之间的交互来实现程序的功能。面向对象编程强调的是对象的概念和对象之间的关系,使程序更易于理解、扩展和维护。

  • 关注焦点是:在计算机程序设计过程中,参照现实中事物,将事物的属性特征,行为特征抽象出来,用类来表示。
  • 以类为单位进行组织,每种事物都具备自己的属性和行为/功能类:一类问题/分类 String,Math,Array,Scanner······
  • 以类为模版实例化对象,通过对象之间的交换来实现某种功能
  • 是一种设计思维,适合解决复杂问题。代码扩展性强,可维护性高
public class 类名{
    
}

注:千万不要把面向过程和面向对象对立起来,他们是相辅相成的。面向对象离不开面向过程!

区别:面向过程适合简单的问题.

​ 面向对象适合复杂的问题,先宏观的分类设计,具体的某一个步骤落地时,有需要面向过程,他们是相辅相成的

类和对象(面向对象的核心概念)

类:

概念:是具有相同特征的事物的抽象描述,是对对象的概括和总结

类的结构

  • 变量:事物属性的描述(名词)

  • 方法:事物的行为(可以做的事情 动词)

  • 构造方法:初始化对象

  • :没有名字的一个代码块

  • 内部类:在类的内部定义的类

    类的声明格式
    [访问权限修饰符][修饰符]class{
    	
    }
    访问修饰符有两种public,无(默认)
    修饰符:final,abstract
    关键字class用来定义一个类
    Java类名的命名规范:
    类名首字母大写,见名知意,驼峰表示
    

对象:(Everything is an object)

概念:实际存在的该类事物的每个个体 ,也称为实例以类为模板在内存中创建的实际存在的实例

​ eg:人类-->一类群体 概念

​ 张三-->具体的人,对象

  • 同一个类的每个对象有不同存储空间

package day5;

import java.sql.SQLOutput;

public class Car {
    /*
    定义属性 成员变量 直接在类{} 中定义内容,称为类的成员
     */
    String name;
    String color;
    int price;//不需要初始化
    /*
     定义方法 成员方法
     */
    public void run(){
        System.out.println("汽车行驶");
    }
    public void stop(){
        System.out.println("汽车停止");
    }
}


package day5;

public class TestCar {
    public static void main(String[] args) {
        Car car=new Car();//
        //new这个运算符来创建一个对象。new的结果是一个对象的引用
        //new以Car类为模板,块独立的空间在内存中开辟一空间,用来存储对象信息
        /*
        Car(类型)car(变量名)声明一个Car变量=[把右边的对象地址赋值给左边的变量,用变量在后面的程序中表示内存中的对象]
        */
        car.name="宝马";
        car.color="黑色";
		car.run();
    }
} 
posted @ 2024-05-25 22:54  Yang0710  阅读(9)  评论(0编辑  收藏  举报