java回顾--------------------1122

3.2.2  标识符

标识符:给程序中变量、类、方法命名的符号;

标识符:可以有 字母、数字、下划线和美元符($)组成,其中数字不能开头;

    不能是java关键字、保留字,但是可以包含关键字、保留字;

    不能包含空格;

    只能包含美元符 不能包含@、#等特殊字符;

3.3数据类型

  java语言支持的数据类型:基本类型和引用类型;

  基本类型:short int long byte  float double char boolean

  引用类型:对象的引用、数组类型;

3.5 基本类型的类型转换

  自动类型转换 强制类型转换

  自动类型转换:

      

                            byte---->  short----->int--->long--->float---->double             char----->int--->long--->float---->double

java为8种基本类型都 提供了对应的包装类,8个包装类都提供了一个parseXxx的静态方法用于将字符串转换成基本类型;

4.6.1 内存中的数组

  数组引用变量只是一个引用 ,这个引用变量可以指向任何有效的内存,只有当该引用指向有效内存后,才可以通过该数组变量来访问数组元素;

数组引用变量被存储在栈内存中,数组元素被 存储在堆内存中;

4.6.5 操作数组的工具类

/**
* 输出 intArr数组的元素
* @param args
* 结果为:[6, 7, 1, 2]
*/
public static void printArr(){
int[] intArr = {6,7,1,2};
System.out.println(Arrays.toString(intArr));
}

第五章先放一放

第六章   面向对象下

6.3.2  单例类

  定义:一个类始终只能创建一个实例;

6.7 内部类

  定义:一个类放在另一个类的内部定义;

  • 内部类提供了更好的封装,不允许同一个包中的其他类访问该类;
  • 内部类可以直接访问外部类的私有数据,外部类 不能访问内部类的实现细节,例如内部类的属性;

  匿名内部类适合创建那些仅需要一次使用的类;

 6.7.5 匿名内部类

  最常用的创建匿名内部类的方式 是需要创建某个接口类型的对象;

public class AnonymousInnerClass {

public void test(Product p){
System.out.println(p.getName()+"====="+p.getPrice());
}
public static void main(String[] args) {
AnonymousInnerClass ts = new AnonymousInnerClass();
ts.test(new Product() {

public double getPrice() {
// TODO Auto-generated method stub
return 111;
}

public String getName() {
// TODO Auto-generated method stub
return "苹果";
}
});
}
}

interface Product{
public double getPrice();
public String getName();
}

6.8 枚举类

  定义:实例有限而且固定的类;

6.9 对象跟垃圾回收

 垃圾回收机制有如下特征:

  • 垃圾回收机制只负责回收内存中对象,不会回收任何物理资源;
  • 程序无法精确控制垃圾回收的运行,垃圾回收会在合适的时候运行;当对象永久性的失去引用后,系统就会在合适时候回收它所占的内存;
  • 垃圾回收机制回收任何对象之前,总会先调用它的finalize方法,该方法可能使该对象重新复活 ,从而导致垃圾回收机制取消回收;

6.9.1 对象在内存中的状态

  • 激活状态:对象创建,有一个以上的引用变量引用,则对象处于激活状态;
  • 去活状态:不再有任何引用变量引用它则对象处于去活状态;   ===== 在这个状态下,垃圾回收机制准备回收该对象所占用的内存,在回收该对象之前,系统会调用所有去活状态对象的finalize方法进行资源清理;如果系统在调用finalize方法重新让一个引用变量引用该对象,则这个对象再次变为激活状态;否则该对象进入死亡状态;
  • 死亡状态:该对象与所有引用变量的关联都被切断;系统已经调用所有去活对象的finalize方法依然没有使该对象变为激活状态,那么该对象将永久性的失去引用;只有当一个对象处于死亡状态,系统才会回收该对象所占用的所有资源;

6.9.2 强制垃圾回收

  调用system类的gc():System.gc();

  调用Runtime对象的gc():Runtime.getRuntime().gc();

6.11 使用jar文件

  jar文件的全称是 java Archive File (java档案文件);

  

原文地址:https://www.cnblogs.com/xiaoxiao1120/p/7872302.html