0%

重载与重写的区别:

  • 方法的重载和重写都是实现多态的方式,区别在于前者实现的是编译时的多态性,而后者实现的是运行时的多态性。
  • 重载发生在一个类中,同名的方法如果有不同的参数列表(参数类型不同、参数个数不同或者二者都不同)则视为重载;
  • 重写发生在子类与父类之间,重写要求子类被重写方法与父类被重写方法有相同的返回类型,比父类被重写方法更好访问,不能比父类被重写方法声明更多的异常(里氏代换原则)。重载对返回类型没有特殊的要求。
阅读全文 »

反射是后续web框架学习的基础!

1. 概念

Java的反射机制是在运行状态中,对于任意一个类(class文件),都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取信息以及动态调用对象的方法的功能称为Java语言的反射机制。亦即动态获取类中的信息,可以理解为对类的解剖。

阅读全文 »

1. Java异常的分类和类结构图

Java标准库内建了一些通用的异常,这些类以Throwable为顶层父类。

Throwable又派生出Error类和Exception类。

错误:Error类以及他的子类的实例,代表了JVM本身的错误。错误不能被程序员通过代码处理,Error很少出现。因此,程序员应该关注Exception为父类的分支下的各种异常类。

阅读全文 »

1. Number类

1.1 Nunber类结构

在这里插入图片描述
所有的包装类(Integer、Long、Byte、Double、Float、Short)都是抽象类 Number 的子类。

阅读全文 »

String类,StringBuilder和StringBuffer类有许多相似之处,对于其中的异同之处需仔细琢磨。

1. 性质

  • String 是只读字符串,也就意味着 String 引用的字符串内容是不能被改变的。 初学者可能会有这样的误解:

    1
    2
    String str = “abc”;
    str = “bcd”;

    如上,字符串 str 明明是可以改变的呀!其实不然, str 仅仅是一个引用对象,它指向一个字符串对象“abc”。第二行代码的含义是让 str 重新指向了一个新的字符串“bcd”对象,而“abc”对象并没有任何改变,只不过该对象已经成为一个不可及对象罢了。

  • StringBuffer/StringBuilder表示的字符串对象可以直接进行修改。其中StringBuilder 是 Java5 中引入的,它和 StringBuffer 的方法完全相同,区别在于它是在单线程环境下使用的,因为它的所有方法都没有被 synchronized 修饰,因此它的效率理论上比StringBuffer 要高

阅读全文 »

1. Date类

1.1 对象创建

可以通过Date的两个构造函数来实现

  1. Date( ) 获取当前日期和时间的Date对象
  2. Date(long millisec) 其中的参数是从1970年1月1日起的毫秒数

代码示例:

1
2
3
4
5
6
7
8
9
10
11
import java.util.Date;

public class DateDemo {
public static void main(String args[]) {
// 初始化 Date 对象
Date date = new Date();

// 使用 toString() 函数显示日期时间
System.out.println(date.toString());
}
}
阅读全文 »

Integer类是int类型对应的包装类,从 Java 5 开始引入了自动装箱/拆箱机制,使得二者可以相互转换。

下面记录几个问题

问题一:

1
2
3
4
5
6
7
8
Integer num1 = new Integer(40);
Integer num2 = 40; //自动装箱,相当于Integer num2 = new Integer(40);
int num3 = 40;

System.out.println(num1 == num2); //false
//在进行比较的时候,num1自动拆箱为inty类型的40,即相当于int num1 = 40;
System.out.println(num1 == num3); //true
System.out.println(num2 == num3); //true
阅读全文 »

Collections类为Java的常用工具类,下面介绍它的一些常用方法:

1. 排序
  • static sort(Listlist);
  • static sort(Listlist, Comparator<? super T> com);

    根据元素的自然顺序或自定义比较器指定顺序来对列表中的元素进行排序

阅读全文 »

java.util.Arrays 类能方便地操作数组,它提供的所有方法都是静态的

阅读全文 »

1. System类

System类代表系统,系统级的很多属性和控制方法都放置在该类的内部。

1.1 成员变量

System类内部包含in、out和err三个成员变量,分别代表标准输入流(键盘输入),标准输出流(显示器)和标准错误输出流(显示器)。

阅读全文 »