摘要: 接口是抽象类的延伸,是抽象类的特殊化 相同点: 都可以写抽象方法,规定了子类必须要重写的方法(所以不能有抽象构造方法和抽象静态方法); 为什么不能有抽象构造方法:构造方法是类实例化时的构造过程,而抽象类不能被实例化,两者矛盾,所以不存在抽象构造方法。 为什么不能有抽象静态方法:抽象方法是专用于继承来 阅读全文
posted @ 2018-05-30 00:14 hong_Yu 阅读(2003) 评论(0) 推荐(0) 编辑
摘要: 有一个对象A,在某一时刻对象A具有了某些有效值,此时可能会需要和对象A完全相同的另一个对象B,并且此后对B的任何改动都不会影响到A中的值; 也就是说A和B是两个独立的对象,但B的初始值是由A确定的。 clone()方法有缺省行为,super.clone(); 因为首先都要把父类中的成员复制到位,才复 阅读全文
posted @ 2018-04-15 18:14 hong_Yu 阅读(260) 评论(0) 推荐(0) 编辑
摘要: 重载表示同一个类中可以有多个方法名相同,参数列表不同的方法。 重写表示子类中的方法可以与父类中的某个方法的名称和参数完全相同。 对父类方法进行重写后,在通过子类创建的实例对象调用这个方法时,将调用子类中定义的方法。 如果父类的方法是private类型,则在子类中就不存在重写,相当于子类中增加了一个全 阅读全文
posted @ 2018-04-15 17:58 hong_Yu 阅读(848) 评论(0) 推荐(0) 编辑
摘要: Math类提供了3个有关取整的方法:ceil()、floor()、round()。 这些方法与他们的英文名字相对应: ceil,天花板,意思就是向上取整,Math.ceil(11.5)的结果为12,Math.ceil(-11.5)的结果为-11。 floor,地板,意思就是向下取整,Math.flo 阅读全文
posted @ 2018-04-15 16:57 hong_Yu 阅读(24730) 评论(0) 推荐(1) 编辑
摘要: 不可以。 因为非static方法是要与对象关联在一起的,必须在创建出一个对象后,才可以通过这个对象调用非static方法;而static方法可以直接通过类名来调用,不需要创建对象。 也就是说,在一个static方法被调用时,还可能没有创建任何实例对象,此时如果从static内部发出对非static方 阅读全文
posted @ 2018-04-15 16:42 hong_Yu 阅读(4884) 评论(0) 推荐(0) 编辑
摘要: 在语法定义上的区别:静态变量前要加static关键字,而实例变量不用加。 在程序运行时的区别:静态变量从属于类,实例变量从属于对象。 静态变量也叫类变量,只要类加载器把类加载到方法区中(类的字节码一经加载),静态变量就会被分配空间,即可使用。 实例变量也叫对象变量,必须创建了实例对象,其中的实例变量 阅读全文
posted @ 2018-04-15 16:21 hong_Yu 阅读(359) 评论(0) 推荐(0) 编辑