java面向对象第二章

一、 继承的优点

优点:提高代码的可重用性

1、   如何判断A、B类之间是继承关系?

符合 is…a关系

2、java中,所有的类都直接或间接的继承了java.lang.Object类

3、   java中,私有的成员构造方法没有被子类继承

缺省权限的成员,不能被其他包中的子类继承

二、如何实现继承

1、   将多个类中的共同的成员,提取出来放到一个公共的类(父类、超类、基类),自己只保留特有的成员

2、   多个类(子类、派生类),继承(extends) 公共类

访问修饰符class 子类 extends 父类{

}

说明:class前面的访问修饰符不能为private、protected

三、继承的2大特性

1、   单一性:一个类只能直接继承一个父类

2、   传递性:一个类可以间接的继承多个类(子类可以调用父类的父类…中的成员)

四、子类如何调用父类的成员

1、public属性

super.属性名

2、构造方法

super(【值】);

子类隐式(自动)查找并调用父类的无参数的构造方法

3、   其他方法

super.方法名([值]);

三、 方法重写

1、   概念—对从父类继承过来的方法进行重新编写

2、   方法重载(overloading)和方法重写(overriding)的区别和联系?

方法重载,

在同一个类中(也可以在继承关系中),方法名相同,参数列表(个数、类型)不同,不能根据方法的返回类型和访问修饰符不同,而判定是方法重载

方法重写(方法覆盖),

是对从父类继承过来的方法进行重新编写,

重写方法时,方法名、参数列表、返回类型必须和要重写的父类方法保持一致,访问修饰符可以不同,但访问权限必须要比父类要大

3、   访问修饰符4个(按权限从小到大排列)

private(私有的)< friendly(缺省的)< protected(受保护的)< public(公共的)

4、 在继承关系中,构造方法执行顺序

1、   在继承中,创建子类对象时,会自动调用父类的无参数的构造方法

2、   子类和父类同时存在有构造方法时,它们的执行顺序?

实例化子类对象时,先执行父类中无参数的构造方法,然后再执行子类中的构造方法

3、在子类构造方法中,使用super关键字调用父类的有参数的构造方法,子类将不会再自动调用父类的无参数的构造方法

时间: 2024-07-30 10:10:02

java面向对象第二章的相关文章

java学习第二章总结

连续上了一个星期的课,也算慢慢适应了这种紧张的学习节奏.现在来总结下第二章所学的内容: 第二章主要是讲java的基础语法,他主要由这几个方面构成:常量,变量,数据类型,关键字,标识符,运算符,表达式,注释以及语句等构成. 数据类型是java控制内存的关键元素,java通过数据类型声明来对变量或者常量进行内存空间的分配,并将其标注好名称(即标识符).不同的数据类型,所分配的空间大小都不一样:整型中byte,short,int,long所对应的空间大小分别为1,2,4,8个字节:浮点型中float,

JAVA 入门第二章 (面对对象)

本渣渣鸽了一个月终于有时间更新.因为有c++基础,学起来这章还是比较简单的,本章我觉得是程序猿质变课程,理解面向对象的思想,掌握面向对象的基本原则以及 Java 面向对象编程基本实现原理,熟练使用封装.继承.多态面向对象三大特性,感受和c++之间的异同,下面是学习路线. 1.类和对象  1-1 什么是类和对象 1-2 如何定义 Java 中的类 1-3 如何使用 Java 中的对象 1-4 Java 中的成员变量和局部变量 1-5 Java 中的构造方法 1-6 Java 中的 static 使

Java复习第二章

Java第二章 标识符由字母数字下划线和美元符号组成,长度不受限 : 第一个字符不是数字字符 : 不能是关键字 : 标志不能是 true false null:区分大小写 (中文可以作为变量名) java的基本数据类型有8种分别 为:booleam.byte.short.char.int.long.float.double 不赋值默认 是false或者0或者null(byte); 八进制在赋值数字前加0,十六进制加0x: 1 2 4 8 byte short int long:2 char ch

LoadRunner + java脚本 第二章

问题:我们执行接口压力测试首先要生成测试URL,测试URL部分字段要进行MD5加密,如何生成这样的测试URL? 有两种方案进行如此测试: 1.使用java脚本生成一批加密后的测试URL,然后将这批数据放入Lr参数库中,编写c脚本进行调用 2.封装MD5加密等类,并将构建测试URL类一并打包,加载到LR-ClassPath中,这样就可以在LR中编写java脚本调用jar包自动生成测试URL了 备注:LR11中在controller跑c脚本支持10000用户,跑java脚本支持1000用户:LR12

深入理解java虚拟机-第二章

第2章 Java内存区域与内存溢出异常 运行数据区域 1.程序计数器(Program Counter Register) 是一块较小的内存空间,它可以看作是当前线程所执行的字节码的行号指示器. 2.Java虚拟机栈(Stack)线程私有,每一个方法调用时都会创建一个栈帧(Stack Frame)用于存储局部变量表.操作数栈.动态链接.方法出口等信息.局部变量存放了编译期可知的各种基本数据类型(boolean,byte,char,short,int,float,long,double).对象引用(

Thinking in JAVA笔记——第二章 一切都是对象

2.1用引用操作对象 虽然一切皆对象,但实际上用的是对象的“引用”. 理解:引用可以理解为别名,引用“知道”对象实际的存放地址,并通过引用可以操作对象 2.2创建对象 new操作符 2.2.1 对象存储位置 1)寄存器:不能直接控制 2)堆栈:位于RAM,对象引用,基本类型存于堆栈 3)堆:位于RAM的动态存储区,存放所有的Java对象 4)常量存贮:代码内部或ROM中 5)非RAM存储:流对象和持久化对象 2.2.2特例:基本类型 置于堆栈中,具有包装器类,将基本类型转换为对象 高精度类Big

Upgrading to Java 8——第二章 Method References(方法引用)

概述 很多java 方法 会使用函数式接口作为参数.例如,java.util.Arrays类中的一个sort方法,就接受一个Comparator接口,它就是一个函数式接口,sort方法的签名如下: public static T[] sort(T[] array, Comparator<? super T> comparator) 相对于传递一个Compartor的实例给sort方法,不如传递一个Lambda表达式. 进一步,我们可以传递一个方法引用来代替Lambda表达式,一个简单的方法引用

java基础第二章

一.变量 1.变量是内存中的一个标识符号,用于存储数据 2.变量命名规则--[P35页]    必须以字母.下划线 _ .美元符号 $ 开头 变量中,可以包括数字 变量中,不能出现特殊的符号,空格 java中的关键字(红色字体),不能做变量名 3.变量命名,遵循 骆驼命名法(变量由1个以上的单词组成,第1个单词首字母小写,后面单词的首字母大写) 二.数据类型 a)数字(整型int(整数).双精度浮点型double(小数)) b)字符型(char),存储单个字符 c)字符串型(String),存储

JAVA OO 第二章知识点

一.JAVA的基础语法 1.关键字 ①关键字:关键字用于定义该门语言,且这些单词对编译器用特殊的含义,而且不能作为标识符. 2.标识符 标识符:在JAVA中我们备选的单词,包括:类名.方法名.字段.变量.包名等. 标识符命名规则: ①标识符由字母.下划线“_”.美元符“$”或数字组成. ②标识符应以字母.下划线.美元符开头. ③Java标识符大小写敏感,长度无限制. ④“见名知意” ⑤不能是关键字 ⑥坚持驼峰命名法 ⑦约定俗成的规则 自定义标识符: 用于标识程序中的变量.符号常量.方法等操作对象