1.是否可以从一个static方法内部发出对非static方法的调用?
不能 因为非static方法的调用需要创建对象 而static方法的调用不需要创建对象
当一个static方法被调用时,可能还没有创建任何实例对象 就在内部无法调用非static方法
2.break return continue之间的区别
Break 跳出该循环语句
Return 返回值 从当前方法中退出 返回到调用该方法的语句处
Continue 跳过该次循环 进行下一次循环
3.Overload和Override的区别?Overloaded的方法是否可以改变返回值的类型?
Overload
一个类里面的两个方法
方法名一样
方法签名不同
Override
两个类里的两个方法
继承|实现关系
方法签名完全相同
可以 参数列表的数量、类型不同 返回值就不同
4.接口是否可继承接口?抽象类是否可实现(implements)接口?抽象类是否可继承具体类(concreteclass)?抽象类中是否可以有静态的main方法?
接口可以继承接口 可以多继承
抽象类可以实现接口 可以多实现
抽象类可以继承具体类 只能单继承
静态方法可以放在抽象类或具体类中,通过类名直接点方法名进行调用。
5.abstractclass和interface语法上有什么区别?
1)抽象类可以有构造方法 接口中不能有;
2)抽象类可以有普通成员变量 接口中不能有;
3)抽象类中可以包含非抽象的方法 接口中只能有抽象方法;
4)抽象类的抽象方法访问类型可以是public、protected 接口中只能是public;
(抽象类中的方法不可以被private修饰。抽象方法的目的是为了被重写的,如果定义了private,(就已经被隐式的设置为final)那么继承该抽象类的类就不能访问重写该抽象方法了)
5)抽象类中可以有静态方法 接口中不能有;
6)抽象类中的静态成员变量访问类型任意 接口中定义的变量只能是public static final
7)一个类可以实现多个接口 但是只能继承一个抽象类
6.abstract的method是否可同时是static,是否可同时是native,是否可同时是synchronized?
都不可以,因为abstract申明的方法是要求子类去实现的,abstract只是告诉你有这样一个接口,你要去实现,至于你的具体实现可以是nativ