7.26 day9 jave

1、抽象类可以有构造器,可以有一个非抽象的父类

2、 垃圾回收机制回收的是堆里面的内存,栈里面的数据自动入栈自动出栈

3、 引用类型的数据在堆当中,内存中操作的只有栈,new关键字在堆里面分配一块内存

4、 java中是值传递

5、 String是不可变字符,即一旦分配了内存,此内存的值将不会改变,又将String赋值是,会重新分配一块内存,字符串池: StringBuffer

6、 在堆中的东西叫对象

Ø 运行时异常:

ArithmeticException 当出现异常的运算条件时,抛出此异常。例如,一个整数“除以零”时,抛出此类的一个实例。

ArrayIndexOutOfBoundsException用非法索引访问数组时抛出的异常。如果索引为负或大于等于数组大小,则该索引为非法索引。

ArrayStoreException试图将错误类型的对象存储到一个对象数组时抛出的异常。如:

Objectx[] = new String[3];

x[0]= new Integer(0);

ClassCastException视图将对象转换为不是实例的子类时,抛出该异常。如:

Objectx = new Integer(0);

System.out.println((String)x);

illegalArgumentException表明向方法传递了一个不合法或不正确的参数

NegativeArraySizeException如果应用程序视图创建大小为负的数组,则抛出该异常

Ø 编译时异常:

NoSuchMethodException无法找到某一特定方法时,抛出该异常

7、 unicode码范围

汉字:[\u4e00,\u9fa5]

数字:[0x30,0x39]

小写字母:[0x61,0x7a]

大写字母:[0x41,0x5a]

8、 final类

final类能够修饰非抽象类、非抽象类成员方法和变量(静态变量、实例变量、局部变量)

final类不能被继承,没有子类

final方法可以被继承,但不能被子类的方法覆盖

final成员变量表示常量,声明成员变量时,必须赋值(要么在声明的时候赋值,要么在构造器中赋值),赋值后不能被改变

publicfinalint E; //final空白,必须在初始化对象的时候赋初值
public Test3(int x) {
E= x;
}

final不能用于修饰构造方法2.5

9、 static只能修饰成员变量,表示所有对象共享这个数据

static能够修饰成员变量和方法,内部类,也可以形成静态static代码块,不能修饰局部变量

被static修饰的成员变量可以直接用类名来调用,语法如下:

类名.静态放大名();

类名.静态变量名;

静态方法中不能用this和super关键字,不能直接访问不带static的成员变量和成员方法

因为static方法独立于任何实例,因此static方法必须被实现,而不能是抽象的abstract

先运行静态代码块,再运行构造器

 

10、static和final一块表示什么

staticfinal用来修饰成员变量和成员方法,可理解为全局变量(java中没有全局变量的概念)

staticfinal修饰变量,表示一旦给值就不可修改,并且通过类名就可以访问

staticfinal修饰方法,表示不可覆盖,并可通过类名直接访问

staticfinal修饰一些容器类型(ArrayList、HashMap)的变量,不可以改变容器变量本省,但可以修改容器中存放的对象

 

11、类成员变量分类

被static修饰的变量叫静态变量或者类变量;

没有被static修饰的变量叫实例变量。

 

12、命令行参数

java主类参数(即命令行参数)

eclipse中java输入命令行参数,在选定的类中,点击右键run as—Runconfigurations—Arguments-Program arguments-Variables-选择string_prompt

上一篇:C#获取文件哈希值


下一篇:rocket-api