2019年6月9日21:56:09
Java支持的数据类型有哪些?什么是自动拆装箱?
byte short int float double long char boolean
自动装箱:java基本数据类型转为所对应的对象包装类型 比如像将int类型转为Integer double转化为Double
自动拆箱:与前面相反
是否可以在static环境中访问非static变量?
static变量在Java中是属于类的,在所有实例中值是一样。在jvm虚拟机开始加载的时候会对static变量初始化。在static环境中需要通过实例来访问非static变量,因为这些变量还没创建。
Java中的方法覆盖(Overriding)和方法重载(Overload)是什么意思?
覆盖:类与类之间必须要有继承关系,而且方法名,参数列表,返回类型必须相同。
重载:发生在同一类中,有几个方法的名字相同,但它们满足参数类型不同 参数个数不同 参数的顺序不同这几个中的一个或多个条件,但与返回值类型无关。
”static”关键字是什么意思?Java中是否可以覆盖(override)一个private或者是static的方法?
static修饰的成员变量或成员方法可以被在没有所属类的实例对象的情况下访问。
覆盖又叫重写。
Java中static方法不能被覆盖,因为方法覆盖是基于运行时动态绑定的,而static方法是编译时静态绑定的。static方法跟类的任何实例都不相关,所以概念上不适用。
java中private修饰的方法不能被覆盖。因为子类是不能访问父类私有的方法
Java中,什么是构造方法?什么是构造方法重载?什么是复制构造方法?
在对象被创建时,会调用构造方法。每个类都有构造方法。在没有去写构造方法时,java编译器会为这个类创建一个无参的构造方法。
构造方法重载与方法的重载很相似。一个类可以有几个不同的构造方法。只要他们的参数列表不同就行。
Java不支持像C++中那样的复制构造方法,这个不同点是因为如果你不自己写构造方法的情况下,Java不会创建默认的复制构造方法。
Java支持多继承么?
不支持。子类只能有一个父类。但可以实现多个接口。