Java基础知识回顾第四篇

createh51周前 (04-25)技术教程7

1、&和&&的区别

作为逻辑运算符:&(不管左边是什么,右边都参与运算),&&(如果左边为false,右边则不参与运算,短路)

另外&可作为位运算符。

2、方法重写(override)和方法重载(overloaded)

方法重载:发生在同一个类当中,方法名相同,参数个数、参数类型、参数顺序不同,和返回值类型无关;

方法重写:发生在有父子类关系的类中,子类重写了父类的方法(相同的定义);

3、成员变量和静态变量的区别

成员变量所属于对象,所以又叫实例变量;静态变量所属于类,所以又叫类变量;

成员变量存在于堆内存中;静态变量存在于方法区中;

成员变量随着对象的创建而存在,随着对象的回收而消失;静态变量随着类的加载而存在,随着类的消失而消失;

成员变量只能被对象调用;静态变量能被对象调用,也能被类调用;

成员变量是对象的特有数据;静态变量是对象的共享数据;

4、抽象类和接口

何为抽象类?类用abstract修饰,不能创建对象。抽象类中不一定有抽象方法,但是含有抽象方法的类一定是抽象类。

何为接口?一些方法特征的集合,抽象类的特例,使用interface关键字。

抽象类和接口的区别:

a、抽象类只能被继承,而且只能是单继承;接口可以被实现,而且是多实现;

b、抽象类中可以定义非抽象方法,子类可以通过继承直接使用;接口中都是抽象方法,需要子类去实现;

c、抽象类使用的是is a关系,接口使用的是like a关系;

d、抽象类中的成员修饰符可以自己定义,接口中的成员修饰符是固定的,都是public;

5、多态

多态存在的三个必要条件:要有继承;要有重写;父类引用指向子类对象。

多态的实现方式:接口实现,继承父类进行方法重写,同一个类中进行方法重载。

方法调用的优先级问题(由高到低):this.show(O)、super.show(O)、this.show((super)O)、super.show((super)O)

相关文章

Java面试中常被忽视的基础知识

Java面试中常被忽视的基础知识在Java的职场生涯里,面试常常成为一道难以跨越的门槛。许多程序员在经过长期的技术积累后,自信满满地走进面试间,却因一些基础知识点的疏忽而遗憾落败。这些看似不起眼的小知...

Java语言基础知识整理汇总

表达式和运算符:算术运算符:元代表多少个操作数,一元表示一个操作数;一元运算符:++自增(只能是变量),++a等价于a = a+ 1;++a 与 a++ 有区别: ++a 先自增 在运算 a++ 先运...

JAVA基础知识-抽象类

抽象类是指被abstract关键字修饰的类,抽象类中可以定义抽象方法,抽象类不能被直接实例化,必须通过实现了其抽象方法的子类进行实例化。抽象类除了不能实例化、可以定义抽象方法外其他一切都与标准类一致,...

JavaEE、Android入门--java基础知识典型案例

如果想进入javaee或者Android编程这个行业,那么必须要学好java基础知识。java基础知识包括:变量--java存储数据的空间。数据类型--java存储数据的类型运算符--算术运算符,逻辑...