文章目录
- 前言
- 章节提要
- 一、C++
- 1、类与派生类的定义
- 2、类外定义函数体
- 3、构造函数与析构函数
- 4、对象指针与对象引用
- 5、虚函数
- 二、Java
- 1、类的定义
- 2、接口的定义
- 三、答题技巧
- 四、案例分析
- 1、案例1
- 2、案例2
前言
本系列文章为观看b站视频以及b站up主@zst_2001系列视频所做的笔记,感谢相关博主的分享。如有侵权,立即删除。
视频链接:视频链接(注:文章中有关图片、以及网友的相关评论与总结等内容未标明出处均出自该视频,感谢大家的分享!)
b站up主页:b站up
章节提要
C++和Java二选一(建议选Java,相较简单些)
一、C++
1、类与派生类的定义
2、类外定义函数体
3、构造函数与析构函数
4、对象指针与对象引用
5、虚函数
二、Java
1、类的定义
2、接口的定义
三、答题技巧
-
JAVA中抽象类不一定有抽象方法,但有抽象方法的一定是抽象类。
-
public和abstract关键字对于interface来说是冗余的,即可以省略不写(答案一般都不写)。
-
抽象类中的抽象方法需要写关键字abstract。(abstract和public位置可互换,建议先写public然后写abstract)
-
接口类似于函数的声明。
-
填写的往往是调用另外一个类中的方法,而不是真正实现该类中方法。
-
子类继承父类的属性可以再构造方法中利用this.属性=值在构造方法中将值赋值到该类的属性中。(该继承的属性最合适为protected的,该属性在子类中不必再定义)
-
子类中除了继承父类属性之外的属性,即子类特有的属性需要子类自己定义,如果缺失类型或变量,则在类中进行查找并填空。
-
注意:new一个类的时候,new后面的类名需要加(),千万注意!(例如:Person p=new Person())。
-
注意:如果是抽象类型 对象名=new 子类型若代码中存在该对象调用方法的代码,则该方法一定是在抽象类型且在子类型中都存在的,因为向上转型对象不能操作子类新增加的成员变量和成员方法,所以其调用的方法一定是在父类中存在的。
(注:下图来自《Java语言程序设计》(陈俊杰、相洁主编,高等教育出版社))
(注:下图来自《Java语言程序设计》(陈俊杰、相洁主编,高等教育出版社))
-
类中方法中参数为this则传入的为该类的对象。(this访问当前对象)
(注:下图来自前言中up主视频)
-
创建对象时List
list=new ArrayList<>()和List list=new ArrayList ()都是正确的,即尖括号里面的内容可以省略,下午题中还是写上其中内容为妙。 (注:下图来自前言中up主视频)
(注:下图来自《Java语言程序设计》(陈俊杰、相洁主编,高等教育出版社))
-
抽象类中的抽象方法必须写abstract关键字。
-
存在需填空代码是创建变量/调用函数时,要考虑/判断是否需要传参数。
-
别的类或函数中,要获取某个类中的私有属性,必须通过该类的公有成员方法进行获取。
-
类有成员变量和成员方法,而接口却只有常量和抽象方法,也就是说,接口的成员变量必须初始化,同时接口中的所有方法必须声明为abstract方法(关键字abstract可省)。
-
接口体包括接口中需要说明的常量和抽象方法。由于接口体中只有常量,所以接口中的成员变量只能定义为static和final型,在类实现接口时不能被修改,而且必须用常量初始化。
(注:下图来自《Java语言程序设计》(陈俊杰、相洁主编,高等教育出版社))
(注:下图来自《Java语言程序设计》(陈俊杰、相洁主编,高等教育出版社))
四、案例分析
1、案例1
- 抽象工厂:设计模式中的典型的创建型模式,有多个不同的工厂,只需要指定的工厂,生产出来的类就属于同一种系列的类,产生的对象就是一个系列的对象。
正确答案:
2、案例2
- 桥接模式:会把类树分成2个,用桥连接起来。
- 依赖关系:一个类调用了另外一个类的方法。
正确答案:
(4)(5)
(6)
-
还没有评论,来说两句吧...