这仅作为个人学习中认为容易忽视或者比较重要的内容。每个人的能力和关注点不同,可能我这说的还是很low。希望大家多多包涵。
注意点:
1.重载方法时,如果传入的数据类型(实际参数类型)小于方法中声明的形式参数类型,实际数据参数类型会被提升。典型的是char类型,如果找不到恰好接受char类型参数的方法,就会把char类型直接提升到int型。样例请看Java编程思想第四版P80-P81。同样,如果传入的实际参数较大,就得通过类型转换来执行窄化转换。样例见Java编程思想第四版P82。
针对P84页的练习题,如下
/**
*Java编程思想第四版
*P83练习题
*
**/
class Contructor1{
Contructor1(){//练习3:无参构造器
System.out.println("This is Constructor1");
}
Contructor1(String s){//练习4:接受参数String的构造器
System.out.println("This is Constructor1" + " " + s );
}
}
class Dog {
void bark(int i) {//练习5
System.out.println("barking");
}
void bark(double m)//练习5
{
System.out.println("howling");
}
void bark(int i, double m)//练习6
{
System.out.println("The dog is barking");
}
void bark(double m, int i)//练习6
{
System.out.println("The dog is howling");
}
}
class Test {} //练习7
public class DefaultConstructor {
public static void main (String[] args){
Contructor1 contructor = new Contructor1();
Contructor1 contructor1 = new Contructor1("nihao");
Dog dog1 = new Dog();
dog1.bark(1);
dog1.bark(1.0);
Dog dog2 = new Dog();
dog2.bark(1,3.0);
dog2.bark(3.0, 2);
Test test1 = new Test();
}
}
Output:
This is Constructor1
This is Constructor1 nihao
barking
howling
The dog is barking
The dog is howling