随笔分类 - JAVA
摘要:1、父类中的私有数据域和方法在该类的外面不能引用,因此它们不能被子类继承2、实例方法仅当可访问时才能被继承。因为私有方法不能在定义它的类外访问,所以它不能被覆盖。如果子类中定义的方法在父类中是所有的,那么这两个方法完全没有关系3、与实例方法一样,静态方法也能继承。但是,静态方法不能覆盖。如果父类中定义的静态方法在子类中重新定义,父类的方法将被隐藏。
阅读全文
摘要:1、java.util.Stack2、java.util.Deque接口
阅读全文
摘要:Java允许用于二元运算的值具有不同的类型,当两个类型不同的运算对象进行二元运算时,Java按照以下规则自动转换运算对象的类型:1.如果运算对象之一是double类型,就将另外一个转换为double类型;2.否则,如果运算对象之一是float类型,就将另外一个转换为float类型;3.否则,如果运算对象之一是long类型,就将另外一个转换为long类型;4.否则,两个运算对象都转换为int类型。数值类型的范围按以下的顺序增加:byte,short,char,int,long,float,double总可以将一个数值赋给支持较大数值范围类型的变量;但是,如果不进行类型转换,就不能将一个值赋给范围
阅读全文
摘要:注意事项:1、非抽象类不能包含抽象方法;在一个有抽象类扩展出来的非抽象类中,所有的抽象方法都必须实现,即使这个子类不使用它们。抽象方法是非静态的。2、抽象类不能用new操作符实例化,但仍然可以定义它的构造方法,这种构造方法将在它子类的构造方法中调用。3、子类可以声明为抽象的,即使它的父类是具体的;子类可以覆盖它父类的方法,将其声明为abstract。这种方法非常少用,但是当父类中方法的实现在子类中无效时,这种方法就有用了,这种情况下,子类必须声明为抽象的。4、不能用new操作符创建抽象类的实例,但是,抽象类可以用作数据类型:GeometricObject[] objects=new Geome
阅读全文
摘要:在任何情况下,构造一个类的实例时,将会沿着继承链调用所有父类的构造方法,父类的构造方法在子类的构造方法之前调用,这叫构造方法链。如果一个类需扩展,最好提供一个无参数构造方法以避免编程错误。
阅读全文
摘要:private限定只能在类内访问;默认修饰符限定只能在包内访问;public使得访问没有限制;如果类没有声明成public,那么只能在相同的包里访问;private只能用于类的成员(如数据域或方法);可见性修饰符用于类的成员,而不能用于方法中的局部变量;大多数情况下,构造方法应该是公开的;但是,如果想防止用户创建类的实例,可以使用私有构造方法。例如Math类。公共类protected中protected的数据或方法可以被它的子类或同一包中的任何类访问,即使子类在不同的包中也可以。可见性递增:private,none(default),protected,public如果不想让类的成员从类外使用
阅读全文
摘要:对象数据域中的变量若没有赋值,引用型数据的默认值是null,数值型的默认值是0,boolean型的默认值是false,char型的默认值是‘/u0000’但是,java没有给方法中的局部变量赋予默认值。class Test{ String name;//默认值为null int age;//0 boolean isScienceMajor;//false; char gender;//'/u0000' }下面的代码会有编译错误,因为局部变量x和y没有初始化,会导致NullPointerException的运行错误class Test{ ...
阅读全文
摘要:可以把两个类放在同一个文件中,但是一个文件中只能有一个类是公用的。公用类必须与文件同名,并且main方法必须在公用类中。
阅读全文
摘要:对象的求值严格按从左到右的顺序执行int a=0;int x=a+(++a);//x=1int a=0;int x=++a+a;//x=2;双目运算符左边运算对象的计算先于右边运算对象任何一部分的计算
阅读全文
摘要:数值类型: 整数类型:byte, short, int, long 浮点类型:float, double字符类型:char布尔类型:boolean注:1、整数直接量默认是int的,要写一个long的,可以在数字后加L或l2、5.0默认是double的,5.0f才是float的3、关于类型转换:int赋给byte或short时需进行类型转换;byte或short赋给int是不必须进行类型转换
阅读全文
摘要:Java语言的一个非常重要的特点就是与平台的无关性。而使用Java虚拟机是实现这一特点的关键。一般的高级语言如果要在不同的平台上运行,至少需要编译成不同的目标代码。而引入Java语言虚拟机后,Java语言在不同平台上运行时不需要重新编译。Java语言使用Java虚拟机屏蔽了与具体平台相关的信息,使得Java语言编译程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。Java虚拟机在执行字节码时,把字节码解释成具体平台上的机器指令执行。这就是Java的能够“一次编译,到处运行”的原因。
阅读全文

浙公网安备 33010602011771号