zoukankan      html  css  js  c++  java
  • 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档案文件);

      

  • 相关阅读:
    通过静态广播监听网络变化,在通过回调通知
    支付宝九宫格
    toolBar
    QQ发送位置(高德地图)
    聊天消息 左右item
    Scrollview 嵌套 RecyclerView 及在Android 5.1版本滑动时 惯性消失问题
    判断软键盘是否弹出 并且隐藏
    Solve Longest Path Problem in linear time
    Why longest path problem doesn't have optimal substructure?
    [leetcode] Reorder List
  • 原文地址:https://www.cnblogs.com/xiaoxiao1120/p/7872302.html
Copyright © 2011-2022 走看看