Java 继承、多态、ArrayList、枚举
admin
2024-01-17 18:29:55
0

继承

Java中只有公共继承,没有私有继承和保护继承

多态

C++中如果希望实现动态绑定,需要将成员函数声明为virtual,而在Java中,动态绑定是默认的行为。

若不希望一个方法是虚拟的,可以将其标记为final

强制类型转换

  • 只能在继承层次内进行强制类型转换
  • 在将超类强制转换位子类之前,应该使用instanceof进行检查

尽量少用强制类型转换,如果转换失败会抛出ClassCastException异常,而没有捕获ClassCastException异常的话,会使程序终止

重写equals方法的建议

  1. 参数命名为otherObject。
  2. 检测this和otherObject是否相等(只是优化)
if(this == otherObject) return true;
  1. 检测otherObject是否为null
if(otherObject == null) return false;
  1. 比较this与otherObject的类

    1. 若equals语义在子类中改变,则使用getClass检测。
    if(getClass() != otherObject.getClass()) return false;
    
    1. 若在所有子类中equals语义相同,则使用instanceof检测。
    if(!(otherObject instanceof ClassName)) return false;
    
  2. 将otherObject强制转化为相应类类型的变量

ClassName other = (ClassName) otherObject;
  1. 根据相等性概念要求来比较
return field1 == other.field1 && field2 == other.field2 && ......;

String getName() 可以返回这个类的名字

Class getSuperclass() 可以返回这个类的超类

Class.forName(className) 获取类名对应的Class对象

ArrayList

import java.util.ArrayList;public class C531 {public static void main(String[] args) {// 设置数组初始容量// 创建ArrayList时,若能估计出数组可能存储的元素数量,就可以在填充数组之前调用ensureCapacity方法// 或者将初始容量直接传入构造器。这样前100次调用不会因为数组扩容带来额外的时空开销。ArrayList arrayList1 = new ArrayList<>();arrayList1.ensureCapacity(100);ArrayList arrayList2 = new ArrayList<>(100);// 添加元素arrayList1.add("hi");arrayList1.add(1, "study?"); // 将元素插入到指定位置,并后移其他元素System.out.println(arrayList1);// 访问元素System.out.println(arrayList1.get(0));// 修改元素System.out.println(arrayList1.set(0, "hi what hi")); // 会返回之前的元素内容arrayList1.set(1, "study!");System.out.println(arrayList1);// 删除元素arrayList1.remove(0);// 将后面的元素前移}
}

枚举

static Enum valueOf (Class enumClass, String name) 返回给定类中有指定名字的枚举常量

String toString() 返回枚举常量名

int ordinal() 返回枚举常量在enum声明中的位置,位置从0开始计数

int compareTo(E other) 枚举常量出现在other之前便返回负数,相等则返回0,否则返回整数。

public enum C56 {SMALL("s"), MEDIUM("M"), LARGE("L");private String size;// 构造函数必须为privateprivate C56(String s) {this.size = s;}public String getSize() {return size;}
}

相关内容

热门资讯

多多安卓系统app下载,一站式... 你有没有发现,最近手机上多了一个超级酷炫的系统——多多安卓系统!是不是已经跃跃欲试,想要下载体验一番...
r801 安卓系统,深度解析新... 你有没有听说过R801安卓系统?这可是最近在数码圈里炒得火热的一个话题呢!想象你的手机突然变得像一台...
安卓系统国外能用吗,探讨安卓系... 你有没有想过,当你拿着那部心仪的安卓手机,准备出国旅行或者工作的时候,会不会突然发现,哎呀妈呀,这安...
健康怀仁安卓系统下载,健康相伴 你有没有想过,在这个信息爆炸的时代,拥有一款健康、稳定的操作系统是多么重要的事情呢?今天,就让我带你...
手机系统模拟安卓5.0,系统革... 你有没有想过,如果手机系统可以像安卓5.0那样模拟出来,会是怎样的体验呢?想象你手中的设备瞬间变身成...
关闭安卓电池检测系统,解锁续航... 你有没有发现,手机用久了,电池续航能力好像越来越不给力了?是不是觉得安卓系统的电池检测系统太烦人了?...
安卓系统变ios永久,探索系统... 你知道吗?最近在科技圈里可是掀起了一股热潮呢!那就是安卓系统用户纷纷转向iOS系统的现象。这究竟是怎...
安卓系统虚拟按键失灵,原因排查... 手机里的安卓系统突然间出了点小状况,虚拟按键失灵了!这可真是让人头疼不已。想象你正沉浸在游戏的世界里...
安卓北京交警系统繁忙,揭秘安卓... 最近北京的小伙伴们有没有发现,打开手机上的安卓交警系统,那可真是忙得不亦乐乎啊!不信?那就跟着我一起...
苹果和安卓互用系统,共创未来 你有没有想过,为什么你的苹果手机上的应用,有时候也能在安卓手机上顺畅运行呢?这背后,其实有一个神奇的...
安卓系统强制内置相机,隐私与安... 你知道吗?最近在安卓系统上,有一个让人有点摸不着头脑的小变化引起了大家的关注。那就是安卓系统竟然开始...
安卓系统读书app推荐,安卓系... 你有没有发现,随着智能手机的普及,阅读变得越来越方便了呢?尤其是在安卓系统上,各种各样的读书app层...
安卓系统新出的机型,探索【型号... 最近手机圈可是热闹非凡呢!安卓系统新出的机型层出不穷,简直让人眼花缭乱。今天,就让我带你一起探索这些...
安卓与苹果系统游戏,游戏生态对... 你有没有发现,现在手机游戏越来越流行了?不管是走在路上,还是在公交车上,总能看到大家低头玩着手机,那...
闭源系统和安卓开源系统,揭秘闭... 你有没有想过,为什么你的手机里装了那么多应用,却总感觉少了点什么?没错,就是那股自由自在的“玩”劲儿...
小米安卓系统密码破解,揭秘安全... 小米安卓系统密码破解:一场技术与道德的较量在数字化时代,手机已经成为我们生活中不可或缺的一部分。小米...
ios系统游戏转安卓系统游戏,... 你有没有想过,为什么有些游戏在iOS系统上玩得那么顺畅,一到安卓系统上就卡得跟什么似的?今天,就让我...
安卓90系统怎么下载,体验流畅... 你有没有发现,安卓90系统最近可是火得一塌糊涂呢!不少小伙伴都在问,安卓90系统怎么下载?别急,今天...
安卓系统主题免费字体,个性化你... 你有没有发现,手机里的字体有时候真的能改变心情呢?想象当你打开手机,看到那一个个活泼可爱的字体,是不...
安卓手机的rom系统,功能丰富... 你有没有发现,安卓手机的ROM系统就像是一层神秘的面纱,包裹着你的手机,让它焕发出不一样的光彩?今天...