zoukankan      html  css  js  c++  java
  • java初级-基本

    1、基本数据类型

      变量就是申请内存来存储值【当创建变量的时候,需要在内存中申请空间】

      Java提供了八种基本类型(内置数据类型):【四个整数型,两个浮点型】

        byte【8】、short【16】、int【32】、long【64】、float【32】、double【64】、char【16】、boolean【表示一位的信息】

      Java提供了引用类型:【所有引用类型的默认值都是null】【一个引用变量可以用来引用任何与之兼容的类型】

        对象、数组

      Java常量:

        不能被修改、使用final关键字来修饰常量、通常用大写

    2、自动类型转换

      低-------------------------------->高

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

    3、变量类型

      Java语言支持的变量类型:

        类变量【即静态变量】:独立于方法之外的变量,用static修饰,可以使用ClassName.VariableName方式访问

        实例变量:独立于方法之外的变量,不过没有static修饰,具有默认值、数值默认0、布尔默认false、引用默认null

        局部变量:类的方法中的变量,访问修饰符不能用于局部变量,是在栈上分配,没有默认值、必须经过初始化(设置数值)、才可以使用

    PS:protected不能修饰类(内部类除外)

    PS:被final修饰的实例变量必须显示指定初始值,final修饰符通常与static修饰符一起使用创建类常量

    PS:抽象类不能用来实例化对象,声明抽象类的唯一目的是为了将来对该类进行扩充

    PS:一个类不能同时被abstract和final修饰。如果一个类包含抽象方法,那么该类一定要声明为抽象类,否则将出现编译错误

    PS:任何继承抽象类的子类必须实现父类的所有抽象方法,除非该子类也是抽象类,抽象方法的声明以分号结尾

    PS:synchronized关键字声明的方法同一时间只能被一个线程访问;

    PS:transient包含在定义变量的语句中,用来预处理类和变量的数据类型,序列化的对象包含被 transient 修饰的实例变量时,java 虚拟机(JVM)跳过该特定的变量

    PS:volatile 修饰的成员变量在每次被线程访问时,都强制从共享内存中重新读取该成员变量的值。而且,当成员变量发生变化时,会强制线程将变化值回写到共享内存。这样在任何时刻,两个不同的线程总是看到某个成员变量的同一个值。

    一个 volatile 对象引用可能是 null。

    4、访问控制和继承

      方法继承规则:

        父类中声明为public的方法在子类中也必须为public

        父类中声明为protect的方法在子类中要么声明为protected,要么声明为public,不能声明为private

        父类中声明为private的方法,不能够被继承  

    5、相关语句

    Java增强for循环

      for(声明语句:表达式){

        //代码句子

      }

      声明语句:声明新的局部变量,该变量的类型必须和数组元素的类型匹配。其作用域限定在循环语句块中,其值与此时数组元素的值相等

      表达式:是要访问的数组名,或者返回值为数组的方法

    Java中switch case语句:

      switch(expression){

        case value :

          break;

        case value : //语句

          break; //可选

        //你可以有任意数量的case语句

        default : //可选

           //语句

      }

             ps:switch语句中的变量类型可以byte、short、int、char、string

         每个case后面跟一个要比较的值和冒号

           case语句中的值的数据类型必须与变量的数据类型相同,而且只能是常量或者字面常量

           如果case语句块中没有break语句,匹配成功后,从当前case开始,后续所有case的值都会输出,如果后续中有break则会跳出

    6、补充

      valueOf():返回一个Number对象指定的内置数据类型

      abs():返回参数的绝对值

      isUpperCase():是否是大写字母

      isLowerCase():是否是小写字母

    7、Java StringBuffer 和 StringBuilder类

      当对字符串进行修改的时候,需要使用StringBuffer【线程安全】和StringBuilder【不是线程安全,不能同步访问,速度快】类,此类的对象能够被多次修改,并且不产生新的未使用对象

      

           

        

  • 相关阅读:
    HTML元素解释
    Java命名规范
    HDU 1058 Humble Numbers(DP,数)
    HDU 2845 Beans(DP,最大不连续和)
    HDU 2830 Matrix Swapping II (DP,最大全1矩阵)
    HDU 2870 Largest Submatrix(DP)
    HDU 1421 搬寝室(DP)
    HDU 2844 Coins (组合背包)
    HDU 2577 How to Type(模拟)
    HDU 2159 FATE(二维完全背包)
  • 原文地址:https://www.cnblogs.com/sharry/p/11970618.html
Copyright © 2011-2022 走看看