java中的构造方法以及this关键字用法
Object 是 Java 类库中的一个特殊类,也是所有类的父类。
也就是说,Java 允许把任何类型的对象赋给 Object 类型的变量。
为啥要重写toString方法呢?
People p = new People("懒惰的小黑",20); System.out.println(p); //p会自动调用toString方法 System.out.println(p.toString()); //手动调用
重写toString方法:
public String toString() {
return "[name = " + getName() + ",age = "+ getAge() + "]";
}
执行结果:[name = 懒惰的小黑, age = 20]
数组类型调用toString()方法
打印多维数组则需调用Arrays.deepToString()方法
重写和重载的区别:
方法的重载和重写都是实现多态的方式,
1重写对内部方法体进行修改 ,其他必须相同 @Override;
2重载要求同名方法的参数列表不同(参数类型,参数个数甚至是参数顺序)
this
以下from:http://t.csdnimg.cn/BR7EX
比如在上述代码中当前所实例化的对象是date1,那么this其实就指向date1,是date1的一个引用(也可以理解为是date1的一个别名)那么this.xxx其实就代表了date1.xxx
”=”左边的”this.year”表示对象date1的year成员变量,而”=”右边的year表示传给我们构造方法的参数。
泛型
泛型就是定义一种模板,例如ArrayList<T>
,
然后在代码中为用到的类创建对应的ArrayList<类型>
:
向上转型
在Java标准库中的ArrayList<T>
实现了List<T>
接口,它可以向上转型为List<T>
: