Are you sure you want to delete this task? Once this task is deleted, it cannot be recovered.
ChenChenTao aea0f08096 | 1 year ago | |
---|---|---|
README.md | 1 year ago | |
RobotPosition.cpp | 1 year ago | |
threads.cpp | 1 year ago |
面向对象和面向过程的区别两者的主要区别在于解决问题的方式不同:
面向过程把解决问题的过程拆成一个个方法,通过一个个方法的执行解决问题。
面向对象会先抽象出对象,然后用对象执行方法的方式解决问题。另外,面向对象开发的程序一般更易维护、
易复用、易扩展。相关 issue : 面向过程 :面向过程性能比面向对象高??open in new window#
创建一个对象用什么运算符?对象实体与对象引用有何不同?new 运算符,new 创建对象实例(对象实例在堆内存中),
对象引用指向对象实例(对象引用存放在栈内存中)。一个对象引用可以指向 0 个或 1 个对象(一根绳子可以不系气球
,也可以系一个气球);一个对象可以有 n 个引用指向它(可以用 n 条绳子系住一个气球)。# 对象的相等和引用相等的区别对象的相等
一般比较的是内存中存放的内容是否相等。引用相等一般比较的是他们指向的内存地址是否相等。# 类的构造方法的作用是什么?构造方法是
一种特殊的方法,主要作用是完成对象的初始化工作。# 如果一个类没有声明构造方法,该程序能正确执行吗?如果一个类没有声明构造方法,也可
以执行!因为一个类即使没有声明构造方法也会有默认的不带参数的构造方法。如果我们自己添加了类的构造方法(无论是否有参),Java 就
不会再添加默认的无参数的构造方法了,我们一直在不知不觉地使用构造方法,这也是为什么我们在创建对象的时候后面要加一个括号(因为
要调用无参的构造方法)。如果我们重载了有参的构造方法,记得都要把无参的构造方法也写出来(无论是否用到),因为这可以帮助我们在
创建对象的时候少踩坑。# 构造方法有哪些特点?是否可被 override?构造方法特点如下:名字与类名相同。没有返回值,但不能用 void
声明构造函数。生成类的对象时自动执行,无需调用。构造方法不能被 override(重写),但是可以 overload(重载),所以你可以看
到一个类中有多个构造函数的情况。# 面向对象三大特征# 封装封装是指把一个对象的状态信息(也就是属性)隐藏在对象内部
,不允许外部对象直接访问对象的内部信息。但是可以提供一些可以被外界访问的方法来操作属性。就好像我们看不到挂在墙上的空
调的内部的零件信息(也就是属性),但是可以通过遥控器(方法)来控制空调。如果属性不想被外界访问,我们大可不必提供方法
给外界访问。但是如果一个类没有提供给外界访问的方法,那么这个类也没有什么意义了。就好像如果没有空调遥控器,那么我们就无法
操控空凋制冷,空调本身就没有意义了(当然现在还有很多其他方法 ,这里只是为了举例子)。
Dear OpenI User
Thank you for your continuous support to the Openl Qizhi Community AI Collaboration Platform. In order to protect your usage rights and ensure network security, we updated the Openl Qizhi Community AI Collaboration Platform Usage Agreement in January 2024. The updated agreement specifies that users are prohibited from using intranet penetration tools. After you click "Agree and continue", you can continue to use our services. Thank you for your cooperation and understanding.
For more agreement content, please refer to the《Openl Qizhi Community AI Collaboration Platform Usage Agreement》