C++ & java小结
JAVA类:
每个类都属于一个包,private成员:只有该类可以访问,子类不能访问
Public:其他类可以访问
Protected: 只有本包内的类可以访问
如果在声明class时不加public,则该类只能在该包内使用
Book book = new Book(); //创建对象
销毁: book = null;
将父类对象应用于子类的特征就是多态
父类通常被定义为抽象类,在多态机制中,比抽象更方便的方式是将抽象类定义为接口,由抽象方法组成的集合就是接口
Java中使用extends关键字来标识两个类的继承关系
当实例化子类对象时,父类对象也相应的被实例化
在java中所有的类都直接或间接继承了java.lang.Object类,它是所有类的父类,是java类层中的最高层类当创建一个类时,除非每个类已经指定要从其他类继承,否则它就是从java.lang.Object类继承而来
接口中定义的方法必须被定义为public或abstract形式
在接口中定义的任何字段都是static和final的
Java语言的异常捕获结构由try、catch、finally 3部分组成
接口是公开的,里面不能有私有的方法或变量,是用于让别人使用的,而抽象类是可以有私有方法或私有变量的。
实现接口的一定要实现接口里定义的所有方法,而实现抽象类可以有选择地重写需要用到的方法,一般的应用里,最顶级的是接口,然后是抽象类实现接口,最后才到具体类实现。接口可以实现多重继承,而一个类只能继承一个超类(父类),但可以通过继承多个接口实现多重继承。
Public Class a extends b implements V1,V2。。。(多个接口)
图形界面编程:Swing包
C++:
//类的三种继承方式:都只继承基类的public和protected部分
//public继承:继承的public和protected仍然为public和protected不变
//protected:public和protected都-->protected
//private: public和protected都-->private
//protected private 类都是不能直接访问的, 只有公有成员函数能够访问它们改变它们
//protected 与 private的区别就在于protected成员是可以被继承的,而private继承不了
虚函数的作用:主要用在基类的指针指向派生类,然后派生类中的同名函数会覆盖基类中的虚函数,基类中的虚函数也可以不定义,也就是纯虚函数:virtual void func() = 0;即可
C++中的类可以多重继承,而java中类不能多重继承,要想多重继承只能多重继承接口
函数后面接const, 一旦企图修改成员数据,则编译器会报错。
如果派生类中有与从基类继承而来的同名的函数,那么会覆盖基类中继承的函数。但如果基类的函数后面加了final,就是禁止被覆盖,这样派生类中有同名的函数并且还要继承来自基类的同名函数,程序会报错。
如果派生类中有与从基类继承而来的相同的成员变量也会覆盖(重写)
对于类的静态成员变量:C++和java都不用实例化对象就能使用静态成员