`
诗意的栖居
  • 浏览: 273785 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

第五章 类和对象

 
阅读更多
封装:1.私有化属性成员
      2.公开get、set方法,供外界访问
      3.多元化的构造方法
构造方法:1.不需要返回值,void也可以省略
         2.方法名与类名相同
         3.在每次创建对象时自动调用
         4.构造方法可以重载,可以有多个,可以利用参数初始化属性成员
         5.自己没写时,编译器会给每个java类提供一个无参的构造方法,一旦自己自定义了,默认的无参的无效

创建对象:1.分配空间。2.初始化属性。3.调用构造方法

static{语句}静态代码块,类加载时(new)执行,多次new,只执行一次
{方法体}    实例代码块,每创建一个对象调用一次
若实例化两次(new两次)输出顺序:
静态代码块-->实例代码块-->构造方法-->实例代码块-->构造方法

继承:1.java单一继承,若没有声明父类,默认继承object类
      2.构造方法不能被继承,用super()调用,必须写在子类构造方法的第一行
         方法和属性可以被继承,继承下来的private修饰的那部分,不能直接调用,通过get、set方法调用
      3.子类构造方法执行时默认调用父类的构造方法,如果父类没有默认的构造方法,崽子类的构造方法的第一行声明调用父类的构造方法
子类生成对象:1递归调用父类的构造方法2分配空间3属性赋值4本类的构造方法

子类创建父类对象,子类对象只能看到父类的东西

多态(一般指运行时多态):
  编译时多态:方法重载(方法名相同,参数不同,参数个数不同或类型不同都可以,与返回值无关;不同类型的顺序不同也可以)。调用时严格类型匹配,若没有匹配的向上就近。
  运行时多态:方法覆盖(子类覆盖父类的方法)(toString()和equals()方法一般需要被覆盖)
            1.重写方法必须和被重写的方法具有相同的方法名称,参数列表和返回类型,只有方法体不同,方法名不同时,编译不会出错,很可能结果不对
              2.重写方法不能使用比被重写方法更严格的访问权限
              3.子类抛出的异常不能比父类宽
              4.继承、重写父类的方法后,父类引用指向子类对象,调用父类的方法时会发生多态,即对象类型不变,还是父类类型,调用父类的方法,运行时寻找子类覆盖后的方法

若需要强制类型转换,先用instance of判断,若是同一个类型就转换,返回值,boolean类型

会发生类加载:1.实例化 A a = new A();
            2.访问static修饰的成员变量时
              3.访问子类加载父类,访问父类加载子类

实例化子类是,代码执行顺序:
    父类static代码块->子类执行代码块->父类普通代码块->父类构造方法->子类普通代码块->子类构造方法。

访问控制
修饰符类内部同一个包子类任何地方
privateyes
defaultyesyes在同一包中即可,否则不行
protectedyesyesyes(不管在哪)
publicyesyesyesyes

class只能用public和default(不写)
  • 大小: 10.8 KB
  • 大小: 8.8 KB
分享到:
评论

相关推荐

    C++程序设计与实践:05-第5章 类和对象.ppt

    C++程序设计与实践:05-第5章 类和对象.ppt

    C++程序设计与实践:04-第5章 类和对象.ppt

    本章主要探讨了如何使用类来封装数据和行为,以及如何通过对象来实例化类。 类是C++中的一种用户自定义数据类型,它允许我们将数据(称为成员变量或属性)和操作这些数据的函数(称为成员函数或方法)封装在一起。...

    C++第五章 类和对象.ppt

    常量对象和常成员函数可以防止对象的状态被意外修改,提高代码的安全性。 总的来说,C++的类和对象是实现封装、继承和多态等面向对象特性的重要工具,是编写复杂软件的基础。通过理解和熟练运用这些概念,开发者...

    C++程序设计与数据结构基础:第5章 类和对象.ppt

    第5章“类和对象”深入讲解了C++中的面向对象特性。首先,面向对象程序设计概述介绍了面向对象的基本概念,如封装、继承和多态。封装是将数据和操作数据的方法绑定在一起,隐藏实现细节,提供公共接口。继承则允许...

    Java基础入门教程 第3章 类和对象(共40页).ppt

    学习本章的目标是理解对象和类的概念,掌握如何定义类、创建对象以及使用构造方法。通过面向对象编程,开发者可以更有效地模拟现实世界的问题,构建出更符合人类思维的软件系统。在实际编程中,熟练运用类和对象能...

    第五章java类和对象

    第五章java类和对象

    第5章类与对象_类与对象.pptx

    第5章类与对象_类与对象.pptx

    【第5章:面向对象基础】_面向对象、类与对象的定义

    本章的"【第5章:面向对象基础】_面向对象、类与对象的定义"将详细讲解面向对象编程的核心概念,包括如何定义类、创建对象,以及如何利用继承和多态性设计高效的程序。通过学习,你将能更好地理解和应用Java的面向...

    第3章 类和对象.ppt

    在第3章“类和对象”中,主要探讨了以下几个方面: 1. **类(Class)**:类是C++中定义用户自定义数据类型的关键,它将数据和操作数据的方法结合在一起,形成了一个抽象的数据结构。类是一种模板,用于创建对象,是...

    C++面向对象程序设计

    前言 第1章 C++语言概述 第2章 数据类型和表达式 第3章 预处理和语句 第4章 函数和作用域 第5章 类和对象(一) 第6章 类和对象(二) 第7章 继承性和派生类 第8章 多态性和虚函数...

    java面向对象程序设计课程每章ppt(共15章+复习1章).zip

    第10章 static修饰符.pptx 第10章 枚举.pptx 第11章 异常和断言.pptx 第12章 JDK8中的日期.pptx ...第5章 类的继承.pptx 第6章 抽象类和接口.pptx 第7章 多态.pptx 第8章 包装器类.pptx 第9章 内部类.pptx

    第5章 类与对象.ppt

    静态空间与对象空间的对比 class TalkPlace { static String talkArea=""; //类变量 } public class User { static int count=0; //类变量 String username; int age; //实例变量 public User(String name,...

    c++第2章类和对象习题.doc

    在C++编程语言中,类和对象是面向对象编程的核心概念。第二章的主题主要围绕这两个概念展开,并通过习题的形式帮助学习者加深理解。 1. 类与对象:类是对象的蓝图,它定义了一组属性(数据成员)和行为(成员函数)...

    第5章_类图和对象图

    第5章_类图和对象图.ppt

    C++ PPT第3章 类和对象(二).ppt

    C++类和对象(二) 本章要点: 1. 对象数组与对象指针 ...本章主要讲解了类和对象的相关概念,包括对象数组、对象指针、静态成员、友元和常对象等内容。这些概念都是C++面向对象程序设计的重要组成部分。

    C++面向对象程序设计教程(第五章)(谭浩强著)

    C++面向对象程序设计教程(第五章)(谭浩强著)

    第5章 JSP内置对象

    第5章 JSP内置对象

    C++实验报告第四章类与对象.doc

    C++实验报告第四章类与对象 本文档对C++编程语言的类和对象章节进行了深入的讲解和实践。通过实验报告,学生可以掌握类的声明和使用、类的组合使用方法、构造函数和析构函数的执行过程等知识点。 一、类的声明和...

    C++教程第07章 类与对象-1定义及使用初步C++教程第07章 类与对象-1定义及使用初步.docx

    在第7章"类与对象"中,我们将深入理解类的定义、成员的定义、对象的创建与使用,以及相关的重要概念。 1. **类的定义**: 类是抽象的数据类型,用于封装数据和操作数据的函数。在C++中,使用`class`关键字定义一个...

Global site tag (gtag.js) - Google Analytics