[抽象类abstract][面向抽象编程]
如果父类的方法本身不需要实现任何功能,仅仅是为了定义方法签名,目的是让子类去覆写它,那么,可以把父类的方法声明为抽象方法:class Person { public abstract void run(); }把一个方法声明为abstract,表示它是一个抽象方法,本身没有实现任何方法语句。因为这个抽象方法本身是无法执行的,所以,Person类也无法被实例化。编译器会告诉法编译Per...
如果父类的方法本身不需要实现任何功能,仅仅是为了定义方法签名,目的是让子类去覆写它,那么,可以把父类的方法声明为抽象方法:class Person { public abstract void run(); }把一个方法声明为abstract,表示它是一个抽象方法,本身没有实现任何方法语句。因为这个抽象方法本身是无法执行的,所以,Person类也无法被实例化。编译器会告诉法编译Per...
Quicklook可以通过按下空格键预览各种文件,图片,视频,文档,演示文稿,压缩文件等等。效果:获取:Github官网微软商店插件:通过插件可以预览更多格式如office文件插件Github下载.qlplugin后预览该插件文件,点击安装卸载插件方法在github中有讲述.使用:选中文件或文件夹后按空格,支持ctrl+滚轮放大小,滚轮调整音量等常规快捷操作,方向键切换其他文件,esc隐藏窗...
覆写子类对象在寻找方法或成员变量的时候,先搜索子类独有空间,在搜索父类空间方法名相同 参数列表一致子类返回值类型应该更小(子类)或者相同子类的抛出的异常小于等于父类的抛出的异常类子类的访问权限比父类访问权限要大和相等变量只能被隐藏(包括静态和非静态),不能被重写可以用子类的静态变量隐藏父类的静态变量,也可以用子类的非静态变量隐藏父类的静态变量静态方法(static)只能被隐藏,不能被重写非静...
继承Java使用extends关键字来实现继承:class Person { private String name; private int age; public String getName() {...} public void setName(String name) {...} public int getAge() {...} ...
Java内存使用1.栈内存:用于存放在函数中定义的一些基本类型的变量和对象的引用变量。当超过该变量的作用域时,java会自动释放为该变量分配的内存空间,该内存空间将被另作他用。2.堆内存:用于存放由new创建的对象和数组。在堆中由new创建的对象和数组是由栈中定义的引用变量来指向的,引用变量的取值为该数组或对象在堆内存中的首地址。引用变量在程序运行到其作用域外后被释放,此时堆中的数组和对象在...