zoukankan      html  css  js  c++  java
  • Java-1 基础前言

    1.Java中基础前言

    1.1关键字

    • 被java语言赋予了特殊意义的单词,组成关键词都小写。

    1.2标识符

    • 给类,接口,方法,变量等起的名字时候使用字符序列,组成规则:

      英文大小写字母,数字字符,$和_
      不能以数字开头,不能是java关键字,区分大小写。
      
    • 约定俗称命令方法

      1.给类和接口命名:大驼峰命名法,首字母大写,多个单词,每个单词首字母都大写。
          
      2.给方法和变量起名,小驼峰命名法。
          
      3.包:命名反转用.隔开
          e.g.:
      		www.alibaba.com fastjson
               com.alibaba.项目名称.模块名称	com.alibaba.fastjson
      

    1.3 常量

    • 值不变的量为常量,所有字母都大写,多个单词中间使用_隔开

      public static final double PI = 3.14;
      SECRET_KEY = "#$#$#$SDWERS%#ssdfs"
      
    • 分类

      字面值常量:
      	字符串常量
      	整数常量
      	小数常量
      	布尔值常量
      	字符常量
      	空常量
      自定义常量:e.g.: final修饰的变量
      
    • demo

      class ConstDemo{
      	public static void main([]string args){
      		System.out.print("hello");// print打印完不换行
      		System.out.println("hello");// println打印完内容后换行
      	}
      }
      

    1.4进制

    • 在java中有二进制(0,1),八进制(0-7),十进制(0-9),十六进制(0-9 a-f)。

    • 进制之间相互转换

      
      

    1.5 变量

    • 在java程序运行的过程中,它的值可以在一定范围内发生改变的量。

    • 变量定义

      数据类型 变量名 = 初始值
      
    • demo

      class VarDemo{
      	public static void main(String[] args){
      		int socre = 0;
      		int golds = 300;
      		String name = "hello world";
      		
      	}
      }
      
    • 变量注意事项

      1.变量所在大括号叫做变量作用域,同一个作用域中不能有多个名字相同变量
      2.定义在方法中变量是局部变量,局部变量只声明,不赋初始值,不能使用,定义在类中方法外的变量才有默认值。
      3.同一行可以定义多个变量,但是不建议这么使用,可读性差。
      

    2.数据类型

    • Java语言是强类型语言,对于每一种数据都定义了明确的具体数据类型,在内存总分配了不同大小的内存空间。

      基本数据类型
      	数值型 byte short int long
      	小数类型 float boolean
      	字符串型 char
      	布尔型	boolean
      		
      引用数据类型
      	类 class
      	接口 interface
      	数组 []
      

    2.1基本数据类型

    • 数值型
    类型 字节 位数 默认值 范围
    byte 1 8 0 -128~~127
    short 2 16 0 -32768~32767
    int 4 32 0 -2147483648~2147483647
    long 8 64 0 -9223372036854775808~9223372036854775807
    float 4 32 0.0 -3.4E38~3.4028235E38
    double 8 64 0.0 -1.79E-308~1.7976931348623157E308
    char 2 16 0~65535
    boolean 1 8 false true或false
    • 整数默认类型是int,小数默认类型是double

    • Demo

    class DataType1{
    	public static void main(String[] args){
    		byte a = 100;
    		short b = 10;
    		char c = '的';
    		int d = 10000;
    		long f = 2147483649L;
            // 定义float小数一定要在小数后面添加f
    		float g = 12.5f;
    		double h = 132.43455;
    		boolean bo = true;
    		System.out.println(a);
    		System.out.println(b);
    		System.out.println(c);
    		System.out.println(d);
    		System.out.println(f);
    		System.out.println(g);
    		System.out.println(h);
    		System.out.println(bo);
    	}
    }
    

    注意定义long类型变量时候,如果等号右侧在int范围内,则可直接赋值,如果超出int范围,需要在整数后面加上一个L。

    • 数据类型默认值
    class DataType2{
    	int b
    	boolean bo;
        static char c;
    	public static void main(String[] args){
    		System.out.println(b);
    		System.out.println(bo);
            System.out.println(c);// 空格
    	}
    }
    报错:
    .DataType2.java:5: 错误: 无法从静态上下文中引用非静态 变量 b
                    System.out.println(b);
                                       ^
    .DataType2.java:6: 错误: 无法从静态上下文中引用非静态 变量 bo
                    System.out.println(bo);
                                       ^
    2 个错误
    
    // 原因:
    	静态方法中只能调用外部用static修饰的变量
    // 修改:
    	// 将b和bo用static修饰
    	static int b;
    	static boolean bo;
    
    • 关于byte的练习
    class ByteDemo{
    	public static void main(String[] args){
    		byte b1=3,b2=4,b;
    		b = b1+b2;// 报错
             b = 3 + 4;// 不报错
    	}
    }
    .ByteDemo.java:4: 错误: 不兼容的类型: 从int转换到byte可能会有损失
                    b = b1+b2;
    // b1和b2是byte类型,两个byte类型相加之后数据为int类型,int类型赋值给byte会报错,这里需要知道byte,short,char不能直接运算的,需要先转int类型。
    
    // 结论:
    	给byte.short类型变量赋值的时候要看等号(=)右边是否有变量:
            如果都是常量,看最终运算出来的结果是否在等号(=)左边的范围内,如果在则可以直接赋值
            如果有变量,则按照运算规则(byte,short,char),不能直接运算,需要先转成int类型,如果得到的结果范围大于等号(=)左边类型范围,则不能赋值
    // 修改
            int b;
    		b = b1+b2;
    
    • float 和long比较
    float f = 123L;
    System.out.println(f);
    // 我们可以把一个long类型的值赋值给一个float类型变量。原因小数和整数存储类型在底层存储是不一样的。float的最大值远大于long最大值。所以可以把一个long类型赋值给float类型。
    
    • char类型
      • 字符:用单引号括起来的,只有一个字符,2个字节:0-65535
    class DataType3{
    	public static void main(String[] args){
    		char ch = 'a';
    		System.out.println(ch);// a
    		System.out.println(ch + 1);// 98
    		System.out.println('a' + 'b'); // 195
    		
    		char ch2 = 97;
    		System.out.println(ch2);// a
            
            char ch3 = 'u0061';
    		System.out.println(ch3);// a
    	}
    }
    // 当定义char类型参数运算,打印的是数字,没有参与运算打印的的是字符。
    // char类型默认值为0,表现形式为一个空格。
    
    • 强制类型转换
    目标类型 变量名 = (目标类型) 要转换的值;
    
    • demo
    class DataType3{
    	public static void main(String[] args){
    		// long -> int
    		long a = 10;
    		int b = (int) a;
    		System.out.println(b);
    		
    		// int -> byte
    		byte by = (byte) b;
    		System.out.println(by);
    	}
    }
    
    • 除了布尔值,其他7种诶性之间都可以进行强转,一般把大类型转成小类型。

    2.2引用数据类型

    • 类 class
    • 接口 interface
    • 数组 []

    这里只是提一嘴后续回讲到

  • 相关阅读:
    Org4的約會的Form_Load
    MSCRM 4 Remove 'Add Existing xxxxx to this record' button
    出售剩余时间
    MSCRM中disabled和Disabled屬性的區別
    一些常用的sql
    約會的客戶變更時取其它表的資料
    MSCRM儲存disabled欄位的值
    CRM显示产品图片
    顯示Object的所有屬性及處理ContactId只列出ParentCustomer的資料的javascript
    浅谈递归过程以及递归的优化
  • 原文地址:https://www.cnblogs.com/xujunkai/p/13698014.html
Copyright © 2011-2022 走看看