`
陌陌天使
  • 浏览: 22577 次
  • 性别: Icon_minigender_2
  • 来自: 长沙
社区版块
存档分类
最新评论

OOP规则总结

阅读更多

<div class="iteye-blog-content-contain" style="font-size: 14px"></div>

 

 OOP规则总结

㈠ 构造器与普通方法

    普通方法的格式:public 返回类型  方法名(参数类型 参数名){}

构造方法的格式:public 类名(数据类型 参数名){}

区别:1.命名方式不同普通方法根据一般命名规则命名,构造方法名同类名

      2.普通方法一定有返回值数据类型,而构造方法无返回值数据类型

      3.用途不同  普通方法表示对象的行为

            构造方法:实例化对象     类名 对象名 = new 构造方法();

            初始化对象的属性 类名 对象名=new 构造方法(“张三”);  

            4.若类中没定义构造方法,则系统默认生成一个默认的无参构造方法,只是这个函数方法体中什么都没有。

            5.构造方法对于一个对象来说,只在实例化对象时调用一次,而普通方法可以在同一对象中多次调用

㈡继承父类(extends)与实现接口(implements

  ⒈继承的作用----避免重复的定义多个相似的类

  2.单根继承

  3.重写父类中的方法

 

2.接口的定义

    ①理解:类是对象的抽象,那么接口可以理解为是类的抽象。

    ②组成:属性---常量值(public final static)(默认访问属性也只有public

接口中常量名的         每一个字母都必须要大写。(常量直接通过接口名进行调用:接口名.常量名)

      方法---没有方法体(只有public和默认)

    ③借口不可以用来实例化对象

3.接口的实现

    ①实现接口必须实现(重写)接口中所有的方法

②一个类可以实现多个接口

4.接口的继承-------一个接口可是集成多个接口

 

㈢重载与重写

 ⒈方法重载

    ⑴方法重载的定义:定义多个方法名相同但是参数不同的函数

    ⑵方法重载的条件:①.方法名相同

                  ②.方法的参数个数,参数类型和参数顺序必须有一个不同

 ⒉方法重写(覆盖父类中同名的方法)

    ⑴方法重写的条件:

      ①.必须要存在继承关系,子类重写父类中的方法

        ②.返回值数据类型 ,方法名,参数个数,参数类型,参数顺序必须要和父类的完全一致。

      ③子类重写方法的访问修饰符可以大于或者等于父类方法的访问修饰符。

㈣接口与抽象类(abstract

    相同点:都不可以用来实例化对象

    区别:1.抽象类是介于类与接口之间的一种数据类型

          2.抽象类是单根继承,而接口可以实现多重继承

          3.抽象类中又构造函数,而接口中没有构造函数

<!--EndFragment-->
分享到:
评论

相关推荐

    ACCP8.0C#oop总结

    ### ACCP8.0 C# OOP 总结 #### 一、深入.NET框架 - **公共语言运行时(CLR)**:CLR是.NET Framework的核心组件之一,它为托管代码提供了一个安全、高效的运行环境。CLR负责管理内存分配与垃圾回收、线程管理和...

    java_oop部分总结.docx

    本文将详细讲解Java OOP中的构造方法、`this`关键字、`toString`和`equals`方法,以及Java的访问修饰符。 1. 构造方法: - 构造方法是用于初始化新创建的对象的方法,它们的名字与类名相同,且没有返回值。 - ...

    C# 象棋 (oop)

    总结,通过C#和OOP,我们可以构建一个功能完善的象棋游戏,不仅展示了C#语言的强大,也揭示了OOP在解决复杂问题时的优雅。在实践中,不断优化和迭代这个游戏,还可以进一步提升编程技能,学习到更多关于游戏设计、...

    C# OOP_3(三层结构+数据库+简单工厂 实现OOP)

    在这个项目中,"Models"可能包含了实体类,而简单工厂模式可能被用来根据需求实例化这些实体类,使得业务逻辑层可以更加专注于业务规则,而不是对象创建的细节。 具体实现上,开发人员可能会使用ADO.NET或者Entity ...

    Java,C#OOP思想word文档总结

    Java的访问规则类似,但静态成员也可通过类名访问,实例成员同样需要通过对象实例访问。 以上只是Java和C#面向对象编程的基本概念和特性,实际应用中,还包括继承、封装、多态等更深入的OOP概念。学习和理解这些...

    2020最新整理JavaOOP面试题108题,含答案

    Java OOP 面试题知识点总结 一、软件架构 * B/S 架构:浏览器/服务器程序 * C/S 架构:客户端/服务器,桌面应用程序 二、Java 开发平台 * JAVA SE:主要用在客户端开发 * JAVA EE:主要用在 web 应用程序开发 * ...

    oop学习文档

    此外,`Cell` 类还展示了如何实现 `Comparable` 接口,这使得 `Cell` 对象可以按照某种规则进行排序。 ##### 2.5 方法重载 方法重载允许在同一个类中定义多个同名的方法,但它们的参数列表不同。这增加了代码的...

    JavaOOP内部测试机试题.docx

    ### Java OOP 内部测试知识点解析 #### 一、题目背景及要求概述 本题旨在通过一个具体的项目——开发阳光旅行网APP中用户下单功能,来考察学生对Java面向对象编程的理解和应用能力。该项目主要包括六大核心功能:...

    C#OOP笔记大全

    ### C#OOP笔记大全 #### 1. 深入理解 .NET ...以上是对 C#OOP 笔记的总结,这些知识点覆盖了 C# 编程语言的核心概念和技术要点,可以帮助初学者快速掌握 C# 的基础知识,并为进一步学习和实践打下坚实的基础。

    OOP高级编程笔记

    - **结论**:总结继承的优点和局限性。 #### 九、自然界的类设计 - **待续...**:这部分可能涉及到如何从自然界中汲取灵感来设计类。 通过以上知识点的梳理,我们可以看到该课程涵盖了面向对象编程的基础理论、...

    JavaOOP三大特性复习课——第二次小班辅导.pptx

    - **数据类型转换**:掌握显式转换与自动转换的规则,避免类型转换时的数据丢失。 - **运算操作符**:熟悉算术运算符、比较运算符、逻辑运算符等的使用方法。 #### Java选择结构与循环结构 - **选择结构**:掌握`if...

    如何编出健壮的代码,java编程30条规则

    对一些习惯于顺序编程思维、且初涉 OOP 领域的新手,往往喜欢先写一个顺序执行的程序,再把它嵌入一个或两个巨大的对象里。这条规则对对象的设计进行了规定,帮助开发者避免“巨大对象综合症”。 规则 9: 若不得已...

    javaoop考试题,Java中级课程,继承,抽象

    根据给定文件的信息,我们可以总结出以下几个重要的Java OOP知识点: ### 1. 方法重载 (Overloading) 方法重载是指在同一个类中允许存在一个以上的同名方法,只要它们的参数列表不同即可。参数列表的不同包括参数...

    javascript oop开发滑动(slide)菜单控件.docx

    #### 七、总结 通过上述分析,我们可以看到使用面向对象编程的思想来开发滑动菜单控件的优势所在。这种方式不仅使得代码更加清晰、易于维护,同时也提高了组件的灵活性和扩展性。对于前端开发者而言,掌握这种开发...

    C#(个人总结两本书的重点)

    - **业务逻辑层(BLL)**:处理业务规则和流程,是应用程序的核心,与表示层解耦,提高可维护性和可测试性。 - **数据访问层(DAL)**:专门处理与数据库的交互,包括数据的读取、写入、更新和删除,隔离了业务...

    Java规范Java规范Java规范Java规范

    手册规定了 OOP 规约的规则,例如,类的设计、继承、多态、封装等。 集合处理 集合处理是 Java 开发的重要组成部分。手册规定了集合处理的规则,例如,ArrayList、LinkedList、HashSet 等。 并发处理 并发处理是...

    yahtzee-oop-[removed]在oop尝试中重新启动yahtzee Project

    总结来说,Yahtzee-OOP-JavaScript项目是一个理想的实践平台,它融合了JavaScript语言特性与面向对象设计原则,有助于提升开发者在实际项目中的编程技能。通过逐步实现和优化这个游戏,开发者可以深入理解OOP的核心...

    c++总结_ThereThere_c++总结_

    变量声明时需要指定类型,并遵循一定的语法规则。例如,`int age = 25;`声明了一个名为age的整型变量并初始化为25。 函数是C++程序中的基本单元,用于封装可重用的代码。我们可以定义具有不同参数和返回类型的函数...

Global site tag (gtag.js) - Google Analytics