面向对象和面向过程的特点:
面向过程:是一行一行、一句一句的执行指令、按顺序编写和执行程序、将这些指令看做一个一个过程通过参数批量调用;
面向对象:将操作数据和程序指令封装成一个模板、有需要的时候将模板实例化、不同实例的组合成为解决问题的办法,最终解决问题;
对象和类对的关系:
类:具有相同特征和行为事物的抽象组合;
对象:将类的抽象事物实例化、类的具体表现形式;
栈和堆的特点、能存放什么内容:
栈:
1、每个方法被调用是在栈中执行;
2、栈的存储特性是后进先出、存放内容为局部变量、操作数、方法入口;
3、速度快、有系统自动分配、并且是一个连续的内存空间;
堆:
1、不是连续空间、分配灵活、速度慢;
2、存放内容已创建的对象和数组;
局部变量、成员变量和静态变量定义:
局部变量:
1、定义在局部区域,只对所属区域有效;
2、存储在栈中,从开始到结束、变量空间自动释放;
3、无默认初始化值;
成员变量:
1、定义在类中、在整个类中能够被访问;
2、随着对象创建而建立、对象消失而消失,并存放在堆中;
3、有默认初始化值;
静态变量:
与类的生命周期一样、整个应用程序中执行都有效、关键字为static;
package的作用:
1、管理Java文件
2、解决同名文件冲突
3、Import 关键字用于在类中引入其他类或package;
public、private、protected、default的使用规则;
public :公共的、能够被任何类访问。
protected: 可以被同包类访问,如果不是同包,必须是该类的子类才能访问。
default : 同包权限、只能被同包的类访问
private:封装、只能在本类中使用
get和set一般是用来做什么?
变量用私有化无法直接调用时,通过public的get和set方法对其进行赋值、读取及其他操作。
继承有什么好处,使用什么关键字实现
好处:提高代码的复用性、减少重复率、让类与类产生联系、关键字:extends;
Java中存在多继承吗?
不存在,只支持多层继承,接口多实现。
object是什么类?
是所有类的父类、超级类。
重写指的是什么?
子类继承父类,实例化后指向父类、或子类继承父类有不同过的表现形式;