摘要:
Java实现多态有三个必要条件:继承、重写、向上转型。 静态的多态:方法名相同,参数个数或类型不相同。(overloading)动态的多态:子类覆盖父类的方法,将子类的实例传与父类的引用调用的是子类的方法实现接口的实例传与接口的引用调用的实现类的方法。 阅读全文
摘要:
https://blog.csdn.net/u014465934/article/details/81370111 阅读全文
摘要:
接口可以继承接口。抽象类可以实现(implements)接口,抽象类可以继承具体类。抽象类中可以有静态的main方法。 问: 抽象类是否可继承实体类 (concrete class) 答: 抽象类是可以继承实体类,但前提是实体类必须有明确的构造函数。 答案很明确,可以继承。其实从Object就是个实 阅读全文
摘要:
(1)重载:发生在同一个类中重写:发生在两个具有IS-A关系(继承关系)的类中(2)重载:编译时多态重写:运行时多态(3)重载:提高代码的可阅读性重写:覆盖父类中已经提供的方法(4)重载:与返回值的类型无关,具有相同的方法名,参数类型不同或参数个数不同;可以具有不同的返回值类型,但是要在参数列表不同 阅读全文
摘要:
Math类中提供了三个与取整有关的方法:ceil、floor、round,这些方法的作用与它们的英文名称的含义相对应,例如,ceil的英文意义是天花板,该方法就表示向上取整,所以,Math.ceil(11.3)的结果为12,Math.ceil(-11.3)的结果是-11; floor的英文意义是地板 阅读全文
摘要:
Ingeter是int的包装类,int的初值为0,Ingeter的初值为null。 首先,17行和18行输出结果都为true,因为Integer和int比都会自动拆箱(jdk1.5以上)。其实java在编译Integer i5 = 127的时候,被翻译成-> Integer i5 = Integer 阅读全文
摘要:
* 问题:是否可以从一个static方法内部发出对非static方法的调用? * * 答:不可以。因为非static方法是要与对象关联在一起的,必须创建一个对象后, * 才可以在该对象上进行方法调用,而static方法调用时不需要创建对象,可以 * 直接调用。也就是说,当一个static方法被调用时 阅读全文
摘要:
1.从语法上的区别: 静态变量前面要加static关键字,而实例变量前不加 2.在程序运行时的区别: 实例变量属于某个对象的属性,必须 创建了实例对象,其中的实例变量才会 被分配到空间, 才能使用这个实例变量。静态 变量不属于某个 实例对象,而是属于类,所以称为类变量 ,只要程序加载了 类的字节码, 阅读全文
摘要:
是引用对象的地址值不能变,引用变量所指向的对象的内容是可以改变。 final变量永远指向这个对象,是一个常量指针,而不是指向常量的指针。 例如:final StringBuffer sbu = new StringBuffer(“abc”); 在对其进行重新赋值 sbu = new StringBu 阅读全文
摘要:
移位运算 左移n位,相当于乘以2的n次 右移n位,相当于除以2的n次,取整 2 << 3,因为将一个数左移n位,就相当于乘以了2的n次方,那么,一个数乘以8只要将其左移3位即可,而位运算cpu直接支持的,效率最高,所以,2乘以8等於几的最效率的方法是2 << 3。 System.out.printl 阅读全文