摘要:抽象类的关键词是“abstract”,主要用于使基础类抽象化,即无法声明。抽象类中通常有抽象的方法(当然也可以有非抽象的方法),如果这个抽象类拥有子类,那么子类必须包含所有父类的抽象方法的具体实现,如果没有,那么编译器便会报错。 接口的关键词是“interface”,与之对应的继承为“impleme
阅读全文
摘要:final方法: 1:为方法上锁,防止被覆盖,改写等 2:方法设置为final后,对其的所有调用都置入“嵌入”调用中,对于代码量少的代码来说,这样做会提升性能。 final类: 1:防止被继承。
阅读全文
摘要:相关代码: 由代码可看出,Hello构造器中的标准参数为对象a,但是看第13行,a的子类b被带入到Hello构造器中也是可以成立的,这就是所谓的”上溯造型“。子类是父类的超集,它至少了父类中的所有方法,所以”上诉造型“对于父类是可行的话那么对于子类也是可行的,不过有可能在子类上溯造型的时候丢失方法(
阅读全文
摘要:合成:在一个类中置入另一个类的句柄,该类是原始类的一种拓展。比如”汽车“类即是”轮胎“类的一种拓展。 继承:以extends作为标志,表示该类属于其父类的一个子类。比如”自行车轮“类即是”轮胎“类的一种子类。 具体在实际中的用法得看两个类之间的关系,是同一类,还是拓展类。 由于初学,对此点不是很清楚
阅读全文
摘要:考虑以下代码: WaterSource类中的toString方法为我们设置的,但是如果去掉这个方法,输出结果也不会有任何改变。这是因为所有的非基本类型的对象均会有一个toString的方法,每当我们想要一个String类型,却获得非此类型的对象,编译器便会调用这种方法。 各种实验:1:如果我们将12
阅读全文
摘要:(1) 用public、private、protected以及“友好的”数据成员及方法成员创建一个类。创建属于这个类的一个对象,并观察在试图访问所有类成员时会获得哪种类型的编译器错误提示。注意同一个目录内的类属于“默认”包的一部分。 代码: 包含输出以及改变值, 对private属性的k值进行任何操
阅读全文
摘要:java中的访问提示符是指“public”,“protected”,“private”等,它们仅控制紧随其后的特定定义的访问。 ps:c++中,访问提示符控制后面所有定义的访问,直到又一个访问提示符加入。 友好的(friendly) 如果不指定访问提示符,就像之前最常用的那样,我们通常称之为“fri
阅读全文
摘要:在java中,导入库的关键字为import,其完整的语句为: 第一行为仅导入java.util中的Vector,不能使用util中除Vector之外的其他类。 第二行为导入java.util中的所有类,故也包括Vector类。 ps:c,c++为“#include "xx.h";”,c#为“usin
阅读全文
摘要:当new一个新的类时,总是先初始化static方法的成员,同时此类成员也仅仅初始化一次,然后再初始化别的成员。 eg: 显示结果为: Bowl(1) Bowl(2) Table() f(1) Bowl(4) Bowl(5) Bowl(3) Cupboard() f(2) Creating new C
阅读全文
摘要:构建器是初始化类的一种方法,要求是与类名称一致。 eg: 1 class Example{ 2 Example(int i){ 3 System.out.println(i); 4 } 5 } 6 public class mail{ 7 public static void main(String
阅读全文
摘要:数值运算符:略 ==: 值判断与通常无异; 类判断为判断句柄,若不相同则为0; equal:类的值的判断; eg:n1.equals(n2); 只能在比较类库中的类时是返回正确结果(大多数java类库中已实现该方法),比较自己创建的类时仍然错误。实现方法待续。!= !=,&&,||,!:与通常无异,
阅读全文
摘要:1:将实数造型成整数之后会将小数点后部分省略。 2:Math.Random()输出范围为[0,1); 3:Random类:进行伪随机,当种子数相同时生成的随机数序列也相同。 ps:种子数:Random rand=new Random(i); 其中的i即为种子数。 待续
阅读全文
摘要:为变量进行赋值时是改变它的值,不改变它所指向的储存空间。 而为对象进行赋值时是改变它所指向的存储空间。 比如说如下代码: 1 class Number{ 2 int i; 3 } 4 public class Assignment{ 5 public static void main{String[
阅读全文