承接上文知识点 Java知识点总结(六)
不能。Equlas大多用来做字符串比较,要判断基本数据类型或者对象类型,需要使用==
==可以判断基本数据类型值是否相等,也可以判断两个对象指向的内存地址是否相同,也就是说判断两个对象是否是同一个对象,Equlas通常用来做字符串比较。
Stringbuilder或者stringbuffer的reverse方法
封装、继承、多态
Java中既有单继承,又有多继承。对于java类来说只能有一个父类,对于接口来说可以同时继承多个接口
重载和重写都是java多态的表现。 重载叫override,在同一个类中多态的表现。当一个类中出现了多个相同名称的方法,但参数个数和参数类型不同,方法重载与返回值无关
重写叫overwrite,是字符类中多态的表现。当子类出现与父类相同的方法,那么这就是方法重写。方法重写时,子类的返回值必须与父类的一致。如果父类方法抛出一个异常,子类重写的方法抛出的异常类型不能小于父类抛出的异常类型。
可以重载,必须重写
必须重写
会执行。当创建一个子类对象,调用子类构造方法的时候,子类构造方法会默认调用父类的构造方法。
是java多态一种特殊的表现形式。创建父类引用,让该引用指向一个子类的对象
子类重写了父类方法和属性,访问的是父类的属性,调用的是子类的方法
Super表示当前类的父类对象 This表示当前类的对象
Abstract
不是必须。抽象类可以没有抽象方法。
包含抽象方法的类一定是抽象类
不可以。定义抽象类就是让其他继承的,而final修饰类表示该类不能被继承,与抽象类的理念违背了
普通类不能包含抽象方法,抽象类可以包含抽象方法 抽象类不能直接实例化,普通类可以直接实例化
接口就是某个事物对外提供的一些功能的声明,是一种特殊的java类
接口弥补了java单继承的缺点
接口中声明全是public static final修饰的常量 接口中所有方法都是抽象方法 接口是没有构造方法的 接口也不能直接实例化 接口可以多继承
抽象类有构造方法,接口没有构造方法 抽象类只能单继承,接口可以多继承 抽象类可以有普通方法,接口中的所有方法都是抽象方法 接口的属性都是public static final修饰的,而抽象的不是