abstract class Instrument {
int i; // storage allocated for each
public abstract void play();
public String what() {
return "Instrument";
}
public abstract void adjust();
}和
abstract class Instrument {
int i; // storage allocated for each
public void play();
public String what() {
return "Instrument";
}
public void adjust();
}是不是一样的类???
int i; // storage allocated for each
public abstract void play();
public String what() {
return "Instrument";
}
public abstract void adjust();
}和
abstract class Instrument {
int i; // storage allocated for each
public void play();
public String what() {
return "Instrument";
}
public void adjust();
}是不是一样的类???
int i; // storage allocated for each
public void play();
public String what() {
return "Instrument";
}
public void adjust();
}这段代码编译没有问题吗?
int i; // storage allocated for each
public void play(){};
public String what() {
return "Instrument";
}
public void adjust(){};
}ok......{} i forget
int i; // storage allocated for each
public abstract void play();
public String what() {
return "Instrument";
}
public abstract void adjust();
}
abstract class Instrument {
int i; // storage allocated for each
public void play(){};
public String what() {
return "Instrument";
}
public void adjust(){};
}
我认为区别就是:
如果是abstract方法,不允许有{}大括号,即实现,这是肯定的了。
如果不是abstract方法,必须有{}大括号,哪怕实现为空
呵,抽象类中可没有抽象方法的,只不过有抽象方法的就一定要声明为抽象类啦!
-------------------
支持
public abstract class d {
public static void main(String[] args) {
System.out.println(111111);
}
}
互相学习 共同提高
另外说下: 在抽象类中定义方法 1: public abstract void adjust();
2:public void adjust(){}; 空实现,子类覆盖!
你们太帅了
个人觉得 抽象类是个超级方便实用的类,通过向上转型,实现不同对象(都继承抽象类或实现接口的)统一调用的功能
int i; // storage allocated for each
public void play();
public String what() {
return "Instrument";
}
public void adjust();
}
这个类编译是不会通过的吧,因为在抽象类众不加abstract的方法都应该又实现的,就算是一对{}也不可以少的,嘿嘿~~~
如果定义了抽象方法,就一定要定义成抽象类,还有抽象类不能用static和private
-===============================================抽象类中可以用的吧!
2.抽象类的修饰符不能为static和private,类中的方法是可以用static和private
来修饰的
你可以写一个测试类,在你抽象类方法加上private,或者static测试一下就可以发现了。:)