齿状二维数组的声明及使用java
或者数组
int[][] triangleArray = new int[5][]; triangleArray[0] = new int[5]; triangleArray[1] = new int[4]; triangleArray[2] = new int[3]; triangleArray[3] = new int[2]; triangleArray[4] = new int[1];
一个源文件中只能有一个public class, 而且类名要与文件名相同,若是一个文件中有多个class,编译后会生成多个*.class文件并发
默认未加任何可见性修饰符的成员或者类都是包内可见的,public成员或类为全局可见,private类成员仅在类的内部可见,private只能修饰成员,不能修饰类,pretected只能由继承类访问dom
final类不能被扩展,final方法不能被重写,final数据域表示常量函数
一般类的数据域应设置为private,而后经过getter,setter方法存取,起到封装的目的ui
定义类所属的包,须要在文件的第一行(非注释非空白语句)添加以下语句:this
package packageName;
若是没有添加package语句,该类会添加到default package下面spa
系统会给类的成员变量赋默认值,但方法内的局部变量不会有默认值,若是没有给它们赋值,会引发编译错误code
若是局部变量和类的成员变量名相同,局部变量取得优先权,以下代码中,方法内的x取得优先权对象
public class F { private int x = 0; private int y = 0; public F() { } public void p() { int x = 1; } }
this关键字的使用场景
1.多个构造函数间的互相调用,this(arg-list)必须是第一条语句(Line5)
2.方法的参数名与类成员名相同时,经过this.访问类成员(Line9)
1 public class Circle { 2 double radius; 3 4 public Circle() { 5 this(1); 6 } 7 8 public Circle(int radius){ 9 this.radius=radius; 10 } 11 }
Random类的无参数构造函数,使用当前时间做为种子,若是两个Random对象的种子相同,它们产生的数字序列也彻底相同
Random类生成的随机数具体必定的肯定性,容易被黑客预先断定,可以使用java.security.SecureRandom类产生随机数,它们是不肯定的
用javafx.geomitry.Point2D表示平面上的一个点,具备x,y坐标
Java提供了多个对原始类型的封装类,分别是Boolean(boolean),Character(char), Integer(int),Double(double), Float(float), Byte(byte), Short(short), Long(long)
在原始类型和封装类之间,Java容许自动装箱(autoboxing)和自动拆箱(autounboxing),以下:
Integer intObject = 2;//装箱 int i = new Integer(1);//拆箱
String对象是不可变的,StringBuilder和StringBuffer是可变的,StringBuffer是同步的,用于多任务并发的场景,单任务用StringBuilder便可,效率更高