burp collaborator client
hashmap的put函数
调用hash方法
调用hashCode方法
java反射
Student student = new Student();
student.doHomework("数学");
Class clazz = Class.forName("reflection.Student");
Method method = clazz.getMethod("doHomework",String.class);
Constructor constructor = clazz.getConstructor();
Object object = constructor.newInstance();
method.invoke(object,"chinese");
面向对象的三大特性
多态的优点
多态存在的3个必要条件
继承
重写
父类引用指向 子类对象 Parent p = new Child();
当使用多态方式调用方法时,首先检查父类中是否有该方法,如果没有,则编译错误;如果有,再去调用子类的同名方法。
多态的好处:可以使程序有良好的扩展,并可以对所有类的对象进行通用处理。
class Shape {
void draw() {}
}
class Circle extends Shape {
void draw() {
System.out.println("Circle.draw()");
}
}
class Square extends Shape {
void draw() {
System.out.println("Square.draw()");
}
}
class Triangle extends Shape {
void draw() {
System.out.println("Triangle.draw()");
}
}
jdk和jre的区别
jdk:java开放工具包 java development kit 提供java的开放环境 和 运行环境
jre :java 运行环境 java runtime environment 提供java运行所需的环境
jdk包括了jre ,如果只运行java程序 安装jre即可 ,如果要编写 java程序 需要安装 jdk
java访问修饰符
default 默认访问修饰符 在同一包内 可见
private 在同一类内 可见,不能修饰类
protected 对同一包内的类和所有子类可见 不能修饰类
public 对所有类可见
构造方法 成员变量初始化 静态成员变量 三者初始化顺序
先后顺序:
静态成员变量,成员变量,构造方法
详细先后顺序:
父类静态变量,父类静态代码块,子类静态变量,子类静态代码块,父类非静态变量,父类非静态代码块,父类构造函数,子类非静态变量,子类非静态代码块,子类构造函数
接口和抽象类的相同点和区别
相同点:
不同点:
https://zhuanlan.zhihu.com/p/368139338
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。