封装: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代码块->子类执行代码块->父类普通代码块->父类构造方法->子类普通代码块->子类构造方法。
访问控制
修饰符 | 类内部 | 同一个包 | 子类 | 任何地方 |
private | yes | | | |
default | yes | yes | 在同一包中即可,否则不行 | |
protected | yes | yes | yes(不管在哪) | |
public | yes | yes | yes | yes |
class只能用public和default(不写)
- 大小: 10.8 KB
- 大小: 8.8 KB
分享到:
相关推荐
C++程序设计与实践:05-第5章 类和对象.ppt
本章主要探讨了如何使用类来封装数据和行为,以及如何通过对象来实例化类。 类是C++中的一种用户自定义数据类型,它允许我们将数据(称为成员变量或属性)和操作这些数据的函数(称为成员函数或方法)封装在一起。...
常量对象和常成员函数可以防止对象的状态被意外修改,提高代码的安全性。 总的来说,C++的类和对象是实现封装、继承和多态等面向对象特性的重要工具,是编写复杂软件的基础。通过理解和熟练运用这些概念,开发者...
第5章“类和对象”深入讲解了C++中的面向对象特性。首先,面向对象程序设计概述介绍了面向对象的基本概念,如封装、继承和多态。封装是将数据和操作数据的方法绑定在一起,隐藏实现细节,提供公共接口。继承则允许...
学习本章的目标是理解对象和类的概念,掌握如何定义类、创建对象以及使用构造方法。通过面向对象编程,开发者可以更有效地模拟现实世界的问题,构建出更符合人类思维的软件系统。在实际编程中,熟练运用类和对象能...
第五章java类和对象
第5章类与对象_类与对象.pptx
本章的"【第5章:面向对象基础】_面向对象、类与对象的定义"将详细讲解面向对象编程的核心概念,包括如何定义类、创建对象,以及如何利用继承和多态性设计高效的程序。通过学习,你将能更好地理解和应用Java的面向...
在第3章“类和对象”中,主要探讨了以下几个方面: 1. **类(Class)**:类是C++中定义用户自定义数据类型的关键,它将数据和操作数据的方法结合在一起,形成了一个抽象的数据结构。类是一种模板,用于创建对象,是...
前言 第1章 C++语言概述 第2章 数据类型和表达式 第3章 预处理和语句 第4章 函数和作用域 第5章 类和对象(一) 第6章 类和对象(二) 第7章 继承性和派生类 第8章 多态性和虚函数...
第10章 static修饰符.pptx 第10章 枚举.pptx 第11章 异常和断言.pptx 第12章 JDK8中的日期.pptx ...第5章 类的继承.pptx 第6章 抽象类和接口.pptx 第7章 多态.pptx 第8章 包装器类.pptx 第9章 内部类.pptx
静态空间与对象空间的对比 class TalkPlace { static String talkArea=""; //类变量 } public class User { static int count=0; //类变量 String username; int age; //实例变量 public User(String name,...
在C++编程语言中,类和对象是面向对象编程的核心概念。第二章的主题主要围绕这两个概念展开,并通过习题的形式帮助学习者加深理解。 1. 类与对象:类是对象的蓝图,它定义了一组属性(数据成员)和行为(成员函数)...
第5章_类图和对象图.ppt
C++类和对象(二) 本章要点: 1. 对象数组与对象指针 ...本章主要讲解了类和对象的相关概念,包括对象数组、对象指针、静态成员、友元和常对象等内容。这些概念都是C++面向对象程序设计的重要组成部分。
C++面向对象程序设计教程(第五章)(谭浩强著)
第5章 JSP内置对象
C++实验报告第四章类与对象 本文档对C++编程语言的类和对象章节进行了深入的讲解和实践。通过实验报告,学生可以掌握类的声明和使用、类的组合使用方法、构造函数和析构函数的执行过程等知识点。 一、类的声明和...
在第7章"类与对象"中,我们将深入理解类的定义、成员的定义、对象的创建与使用,以及相关的重要概念。 1. **类的定义**: 类是抽象的数据类型,用于封装数据和操作数据的函数。在C++中,使用`class`关键字定义一个...