zoukankan      html  css  js  c++  java
  • 重要的知识点总结

    1、源文件的声明

    源文件指的就是.java的文件

    说明:

    • 每一个源文件可以定义多个类,但是只能有一个public类,可以有多个非public类
    • 源文件的名称应该和public类名一样
    • 内部类的访问权限可以是public、protected、default、private(内部类和普通类一样定义)
    //源文件名称为TestClassName.java
    public class TestClassName {
    
        //内部类
        public class InnerClass{   }
        protected class InnerClass1{   }
        private class InnerClass2{   }
        class InnerClass3{   }
        
    }
    
    class TestClassName1{
    
    }
    
    class TestClassName2{
    
    }

    2、基本类型和引用类型

    8种基本类型中有6中数字类型,1种布尔型,1种字符型,默认值及其范围如下表:

    基本类型 取值范围 默认值
    byte -128(-2^7)~127(2^7-1) 0
    short -32768(-2^15)~32767(2^15 - 1) 0
    int -2,147,483,648(-2^31)~2,147,483,647(2^31 - 1) 0
    long -9,223,372,036,854,775,808(-2^63)~9,223,372,036,854,775,807(2^63 -1) 0L
    float
    1.4E-45~3.4028235E38
    0.0f
    double  
    4.9E-324~1.7976931348623157E308
    0.0d
    boolean   false
    char   'u0000'

     引用类型:

    • String、数组、对象都是引用类型
    • 所有的引用类型的默认值都是null

    常量:

    • 用final关键字修饰
    • 一般用大写来表示
    final double PI = 3.14;

    3、变量的分类

    局部变量:

    • 声明在方法、构造方法或者语句块中,且只在这些范围内可见
    • 方法、构造方法或者语句块被执行时被创建,执行完成后被销毁(生命周期)
    • 访问修饰符不能用于局部变量
    • 局部变量没有默认值,被声明后,必须经过初始化才能被使用
    public class TestClass {
        String str_1;   //成员变量
       static String str; //静态变量
    
        public void method() {
            String str_2; //局部变量
    
            // System.out.println(str_2);  //报错,必须初始化才能使用
            str_2 = "hello world";
            System.out.println(str_2);
    
            System.out.println(str_1);
        }
    }

    成员变量:

    • 声明在类内,但在方法、构造方法或者语句块之外
    • 成员变量在对象创建的时候创建,在对象被销毁的时候销毁(生命周期)
    • 成员变量可是声明在使用之前或者使用之后,因为成员变量在对象被创建的时候创建,而使用是在对象被创建之后
    • 访问修饰符可以修饰成员变量
    • 成员变量有默认值,数值类型的默认值是0,布尔类型的是false,引用类型的是null

    静态变量:

    • 声明在类中并且被static修饰,在方法之外
    • 静态变量在第一次访问的时候被创建,在程序结束的时候被销毁(生命周期)
    • 无论对象创建多少次,静态变量只有一份
    • 默认值和成员变量相同
    • 访问可以通过类名.变量名的方式访问

    4、访问修饰符

    类中的成员变量和类不写访问修饰符则默认为default

    接口里的变量都隐式声明为public static final,而接口里的方法默认情况下访问权限为 public。

    5、非访问修饰符

    static:用来修饰类、方法和变量

    final:用来修饰类、方法和变量。final修饰的类不能被继承,final修饰的方法不能被子类重写,final修饰的变量不能再被修改

    abstract:用来修饰类和方法

    synchronized和volatile:作用于多线程

    transient:修饰成员变量时,表示该变量不被序列化

    6、instanceof运算符

    该运算符的作用是检查对象是否是某种类型

    String name = "chenia";
    boolean res = name instanceof String;

    7、参数的的传递

    java 基本数据类型传递参数时是值传递 ;引用类型传递参数时是引用传递 。

    doIt1()输出的是1 2 3 4 5,数组虽然是引用传递 ,但是将引用 z = null 只是将引用z不指向任何对象 ,并不会对原先指向的对象数据进行修改 

    doIt2()输出的是99 2 3 4 5,因为对数组进行修改了

    public class Test{
        public static void main ( String[] args ){
            int[] myArray = {1, 2, 3, 4, 5};
            doIt1( myArray );
            for(int j=0; j<myArray.length; j++)
                System.out.print( myArray[j] + " " );  //1 2 3 4 5  
    
            doIt2( myArray );
            for(int j=0; j<myArray.length; j++)
                System.out.print( myArray[j] + " " ); //99 2 3 4 5
        }
    
        public static void doIt1( int[] z ) {
            z = null ;
        }
    
        public static void doIt2( int[] z ){
            int[] A = z;
            A[0] = 99;
        }
  • 相关阅读:
    回溯法 | 子集树:装载问题
    再谈01背包 | 使用【跳跃点集合】代替【求解矩阵】解题
    线性代数 | 行列式的计算
    慢,也是一种态度
    回溯法 | 图的m着色问题
    回溯法 | 旅行商问题(TSP问题)
    回溯法 | n皇后问题
    基数排序 RadixSort
    03.父工程pom、整合测试、SpringBootApplication注解
    02.自定义banner、全局配置文件、@Value获取自定义配置、@ConfigurationProperties、profiles配置
  • 原文地址:https://www.cnblogs.com/chenia/p/13856559.html
Copyright © 2011-2022 走看看