初来乍到,想找工作,总免不了要各种面试,结果闹出一系列笑话,这是来自一个青虫的吐槽!!!
”谈谈你对abstract修饰的类的理解?“
“abstract?抽象的意思啊,是java修饰符的一种;额。。。。忘了(其实我是不知道)”
结果可想而知,凉凉了0.0
然后回来之后,各种百度,查资料啊。。总结出一些东西,想着写下来,可能不是很全面吧,以后补充吧;
abstract可以修饰类或者方法;当我们发现很多类中有相似的方法时,我们可以考虑把这个方法抽取出来,放进一个abstract类中,然后让其他类去继承;在我看来,这就是抽象类存在的价值--为了被继承重写!!
如下代码:很多类中有得到当前用户的姓名的方法,那么我们就可以考虑把这个方法抽出来,放入抽象类中,当某个类需要这个方法时,直接继承抽象类,重写getName()方法即可。
abstract class Person{
String name;
Integer age;
public Person(String name,Integer age){
this.name =name;
this.age = age;
}
abstract void getName();
public void doSth() {
System.out.println("eat");
}
}
class Man extends Person{
public Man(String name, Integer age) {
super(name, age);
}
@Override
void getName() {
System.out.println(this.age+this.name);
}
}
public static void main(String[] args) {
Man man = new Man("zs",12);
man.getName();
}
理论有很多,我比较重视怎么用,就这些,以后有机会再补充0.0