JavaSE部分复习(三)
前言
这里开始对JavaSE剩下的部分进行复习,主要是面向对象都是一些知识,复习的内容包括Object类,System类,多态
JavaSE剩余部分
1.Object类概述
概述:Object类是Java语言中的根类,即所有类的父类。所有对象(包括数组)都实现这个类的方法。
Object常用方法:
- toString()方法
String toString() 返回该对象的字符串表示,一般需要对其进行重写,可以快捷生成。
public class ObjectDemo {
public static void main(String[] args) {
Student s = new Student();
s.name = "zhangsan";
s.age = 18;
System.out.println(s.toString());
//我们输出一个对象,就是默认输出这个对象的toString()方法
System.out.println(s);
}
}
class Student extends Object { //Object类是所有类的父类
String name;
int age;
//一般要重写toString(),但可以直接生成
public String toString() {
return "Student [name=" + name + ", age=" + age + "]";
}
}
- equals()方法
boolean equals(Object obj) 比较两个对象是否相同,它其实就是使用两个对象的内存地址在比较。一般也要重写,也能自动生成。
2.System类
System 类包含一些有用的方法。它不能被实例化(static)。
代码 | 功能 |
---|---|
void arraycopy(源数组, 源开始处, 目标数组, 目标索引, 复制长度) | 拷贝数组 |
long currentTimeMillis() | 返回以毫秒为单位的当前时间 |
void exit(int status) | 终止当前正在运行的 Java 虚拟机 ,通常 -1表示异常终止 ,0表示正常终止 |
3.多态
多态是继封装、继承之后,面向对象的第三大特性。
- 什么是多态?
多态分为操作符的多态和类的多态。操作符的多态是指,例如“+”号的两边,既可以是两个数字也可以是两个字符串;类的多态要满足两个条件:1.父类(接口)引用指向子类对象 2.调用的方法右重写。 - 多态的格式:父类 变量名 = new 子类();
public class Item{
public void effect{
System.out.println("物品使用后,可以有效果 ");
}
public static void main(String[] args) {
Item i1= new LifePotion();
Item i2 = new MagicPotion();
System.out.print("i1 是Item类型,执行effect打印:");
i1.effect(); //血瓶
System.out.print("i2也是Item类型,执行effect打印:");
i2.effect(); //魔瓶
}
}
class LifePotion extends Item {
public void effect(){
System.out.println("血瓶使用后,可以回血");
}
}
class MagicPotion extends Item{
public void effect(){
System.out.println("蓝瓶使用后,可以回魔法");
}
}