【3】实现单子模式非常重要。
package danzi;
public class single {
private single(){}
private static single Instance = new single();
public static single getInstance(){
return Instance;
}
}
package danzi;
public class singleTest {
public static void main(String[] args) {
single s1 = single.getInstance();
single s2 = single.getInstance();
System.out.println(s1==s2);
}
}
任务三、简答题
【1】什么是方法的重写?【用程序代码进行测试然后截图附后】
答:重写Override表示子类中的方法可以与父类中的某个方法的名称和参数完全相同,通过子类创建的实例对象调用这个方法时,将调用子类中的定义方法,这相当于把父类中定义的那个完全相同的方法给覆盖了,这也是面向对象编程的多态性的一种表现。
重写的要求:
①子类方法对父类方法进行重写,又叫覆盖
②方法名相同
③参数列表相同
④子类方法返回值类型不能比父类方法返回值类型更大
⑤子类方法抛出的编译时异常不能比父类方法范围更大,运行时异常无所谓
⑥子类方法的访问权限不能比父类方法更严格
【2】什么是方法的重载?【用程序代码进行测试然后截图附后】
答:重载Overload表示同一个类中可以有多个名称相同的方法,但这些方法的参数列表各不相同(即参数个数或类型不同)。
重载的要求:
①在同一个类中
②相同方法名
③不同参数列表
【3】如何比较两个字符串?为什么要这样?
最好用equals()函数来比较,因为如果单纯用==比较的话,只适用于String s1=”xxx” 和String s2=”xxx”定义的比较,如果是String t1=new String(“xxx”),这种定义的比较就不可以了,因为前一种类型不管怎么定义,他的地址都是不变的,所以肯定是相等的,但是new String(“xxx”)定义的话就改变了他的地址,所以就不一样了,所以==比较不保险,最好用equals()函数比较。更全面。