当前位置: 首页 > wzjs >正文

萝岗做网站wordpress 重写 函数

萝岗做网站,wordpress 重写 函数,品牌网线和普通网线有什么区别,网站建设课程思政开发语言中关于面向对象和面向过程的笔记市面主流语言分类面向过程面向对象市面主流语言分类 面向过程编程(Procedural Programming):C语言;面向对象编程语言(Object-Oriented Programming, OOP) &#xf…

开发语言中关于面向对象和面向过程的笔记

  • 市面主流语言分类
  • 面向过程
  • 面向对象

市面主流语言分类

  1. 面向过程编程(Procedural Programming):C语言;
  2. 面向对象编程语言(Object-Oriented Programming, OOP) :Java、C++、C#、Python;

面向过程

面向过程的程序可以视为一系列线性执行的步骤(函数或子程序),通过控制流语句(顺序、循环、分支)组织逻辑
其中,
1、面向过程的变成语言数据和操作是分离的,数据是存储在变量中的,函数独立操作这些数据。
也就是定义的子函数与变量是相互独立的,通过函数调用传递数据。
例如,先定义不同功能的函数,然后在主函数中调用该子函数,子函数的入参在主函数中定义。

   #include <stdio.h>// 定义独立函数操作数据
float circle_area(float radius) {return 3.14 * radius * radius;
}float rectangle_area(float width, float height) {return width * height;
}int main() {// 数据与函数分离float r = 5.0;float w = 4.0, h = 6.0;printf("Circle Area: %.2f\n", circle_area(r));      // 输出 78.50printf("Rectangle Area: %.2f\n", rectangle_area(w, h)); // 输出 24.00return 0;
}

面向过程的变成方法,都是从主函数开始,逐步分解任务为子过程,也就是自顶向下设计

所以,面向过程的变成的基本单元是函数(过程)
面向过程是步骤导向

面向对象

面向对象的程序由相互作用的对象构成,每个对象包含数据(属性)和行为(方法)。

// 这里定义了一个类Circle,在这个类里封装了一个变量radius和一个行为(方法)getArea。
class Circle {  private double radius; // 半径被保护  【这里的变量是private,意味着这是一个私有变量,私有意味着只能在Circle类内部访问,外部无法直接访问。所以称为“半径被保护”,这里的面向对象封装起到了数据保护的作用】//我们将半径设为私有,这样外部代码不能直接修改半径(除非通过构造方法,但构造方法只在创建对象时调用一次)public Circle(double r) { this.radius = r;this.radius = r; }  //【这里是一个公共的构造方法,这个方法的参数是r,用于在创建Circle对象时初始化半径(创建Circle类的对象)。通过这个公共方法的参数r,将r的值传递给成员变量radius,//这里的this是指当前对象,也就是使用类创建对象后,这个对象就有个这个变量,通过构造函数对这个变量进行赋值。】//【先定义类,然后类中定义构造函数,构造函数用于定义新的方法,方法通过构造函数对变量进行赋值,然后再使用定义的对象调用类中的方法】public double getArea() { // 对象自己计算【公共方法,无参数】 ,这里是行为封装 ,逻辑封装在内部,外部只需要调用该方法return 3.14 * radius * radius;  }  
}  // 这里使用 Circle 类创建了对象myCircle 
Circle myCircle = new Circle(5.0);  //【new用来创建新的对象,这里使用构造方法Circle,将5.0传递给了r。创建的对象被赋值给了Circle 类型的变量myCircle 】
//【这里需要注意,在这里进行对象初始化时即确定半径值,后续无法直接修改,如果要修改需要创建setRadius 方法】
//对象的创建步骤为:1、new 在堆内存分配空间,创建 Circle 对象实例。2、调用构造方法 Circle(5.0),初始化 radius = 5.0。3、对象地址赋值给引用变量 myCircle(栈内存存储该地址)。double area = myCircle.getArea(); // 告诉圆:"把你的面积给我"【这里的myCircle 是个对象,通过对象调用了类中的方法getArea】
//【这个例子展示了面向对象编程中的**封装特性**:将数据(半径)隐藏在对象内部,通过公共方法提供对数据的操作(计算面积)。外部代码只需要知道如何调用方法,而不需要知道内部实现细节。】

在这个例子中,定义了类Circle ,在类中定义了一个私有成员变量radius,一个构造方法Circle,一个成员方法getArea。

**【堆与栈需单独分析】**

总结面向对象的编程

类是较为顶层的设计,在类中定义各种成员,通过类定义这个类的对象。
上面例子中,通过私有的变量+公有的方法,仅暴漏接口,保障了数据的安全性,私有变量只有创建方法时定义,通过构造函数。

通俗的理解:
面向过程:是厨师,自己按步骤做菜。
第1步:拿2个番茄切块
第2步:打3个鸡蛋搅匀
第3步:开火倒油,炒鸡蛋后盛出
第4步:炒番茄,加鸡蛋混合
第5步:放盐出锅
面向对象:是餐厅老板,开一家餐厅
招专业员工(创建对象):
🧑‍🍳 厨师对象:技能 炒菜()
🧅 番茄对象:属性「颜色=红」,行为「被切块」
🥚 鸡蛋对象:属性「数量=3」,行为「被打散」
发号施令(对象交互)
厨师.处理(番茄); // 番茄自己执行"切块"
厨师.处理(鸡蛋); // 鸡蛋自己执行"打散"
厨师.炒(番茄, 鸡蛋); // 厨师调用"炒"方法

最后再做一次分析

// 抽象父类:定义公共接口
//定义抽象类Shape,抽象类不可实例化,也就不不能创建对象
//通过抽象类定义了一个模版,一个形状的模版(也可以是一个汽车的模版)
abstract class Shape {public abstract double area();//抽象类中定义抽象方法,这个方法在子类中必须被实现
}// 子类继承并实现多态
class Circle extends Shape {//子类Circle 继承了父类Shape ,因为Shape中包含抽象方法,因此在这个子类中必须实现该方法,也就是必须包含方法体
//一个普通类继承“形状”这个抽象类,定义了一个圆形,该类包含了圆形的具体实现,根据抽象类的要求,必须实现该形状的面积。private double radius;  // 封装数据。封装私有成员变量public Circle(double radius) {//构造函数this.radius = radius;}@Override//重写父类的方法area,可用户后续的多态实现,需要使用哪个便创建哪个子类的对象,结果将根据子类的不同而不同public double area() {  // 多态实现。对继承的父类中的抽象方法进行实现。return Math.PI * radius * radius;}//方法体
}class Rectangle extends Shape {//同理,这是定义了一个长方形类,该类继承了抽象类“形状”,因此在这个长方形中“面积”这个方法必须被实现private double width, height;//定义私有成员变量public Rectangle(double width, double height) {//长方形这个类的构造函数this.width = width;this.height = height;}@Overridepublic double area() {//实现抽象方法“面积”return width * height;}
}public class Main {//定义一个公有的类Mainpublic static void main(String[] args) {//定义了main方法Shape circle = new Circle(5.0);       // 父类引用指向子类对象。创建了一个对象circle ,这里的构造函数Circle引用了父类Shape的子类Circle Shape rect = new Rectangle(4.0, 6.0);//同理,再创建一个对象rect,引用了子类//多态:通过父类引用调用子类重写的方法,实际执行的是子类的方法。 System.out.println("Circle Area: " + circle.area());   // 78.54。打印对象circle的方法areaSystem.out.println("Rectangle Area: " + rect.area());   // 24.00}
}

面向对象的编程的基本单元是对象(数据 + 方法)
面向对象是角色协作

上面通过对实际代码的解析,尝试理解java的面向对象开发,对于某一个任务可以通过定义类来定义功能,后续可以直接通过构造函数创建该类的对象,对象通过调用具体方法来完成对单功能的实现。
也可以其他类通过创建该类的对象,通过构造函数,然后调用该对象中的方法,以实现具体目标
例如,这边通过多单元分工实现了多个功能类的开发,开发完成后统一由一个人创建一个类来创建各个类的对象,通过该对象调用方法达到实现某功能的目标。
也就是面向对象的编程。


整体上看,面向过程的编程更适合单体作战,一个人完成重头到尾的任务。面向过程的编程更适合集群作战,每个角色负责不同的任务,通过多体交互完成最终任务。

http://www.dtcms.com/wzjs/583803.html

相关文章:

  • 广州网站改版设计制作个人安装公司怎么注册
  • 做网站公司的使命南阳网站制作哪家好
  • 怎样注册网站账号申请平台公司是什么意思
  • 如何把自己网站推广出去肥西建设局官方网站
  • 聚牛网站建设公司苏州网站建设问问q778925409强涵
  • django怎么做网站标书制作软件免费版
  • win2003 做网站服务器上海门户网站建设公司
  • 中学网站管理系统下载官网网站开发框架
  • 网站功能模块 分析零件加工网上接订单
  • 电商 网站 降低 跳出率 措施 效果天元建设集团有限公司被山东高速收购了吗
  • 网站备案号在哪里看搜索引擎链接
  • 建立导购网站营销软件排名
  • 自己做网站卖东西犯法吗免费行情的软件大全下载
  • 丽江市建设局网站企业网站建设服务哪家好
  • 网站小图标素材下载阳江市招聘最新招聘信息
  • 网站网站怎么建设商城网站建设用乐云seo系统
  • 胶州专业建站长沙网站建设接单
  • 可上传多个视频的网站建设代加工手工活外发免费 来料加工
  • 如何建网站的步骤代理公司注册地址
  • 手机网站制作网站建设开发软件
  • 免费制作网站的基本流程聊城网站建设动态
  • 网站建设整个流程阿里云 虚拟主机 wordpress
  • 公司微信网站建设方案网站建设汇报材料
  • 重庆电力公司网站建筑公司发展规划
  • 手机建设银行网站wordpress换域名搬家图片不显示
  • 网站色调为绿色嘉兴企业网站推广方法
  • asp.net网站开发详解谷歌代运营
  • 衡水移动端网站建设精准客源
  • 晋中推广型网站建设响应式网站模板
  • 2015网站建设源码免费的推广软件下载