Java程序设计—孙鑫java无难事教程Lesson1《java技术与应用》

Java程序设计—孙鑫java无难事教程Lesson1《java技术与应用》
1.Java语言特性
简单的、面向对象的、健壮的、安全的、解释的、与平台无关的、多线程的、动态语言的。
2.Java跨平台原理

原理介绍如下图所示:
图1:

图2:

3.java环境熟悉
(1)path环境变量
启动cmd.exe后,键入set path查看路径,如下:
C:\Users\juber>set path
Path=C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32
\WindowsPowerShell\v1.0\;C:\Program Files\Common Files\Thunder Network\KanKan\Co
decs;C:\Program Files\Common Files\Compuware;C:\Program Files\Java\jdk1.7.0_03\b
in
PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC
配置环境变量如下图所示:

(2)jar命令
a.打包文件
F:\java\JavaLesson\Lesson1>jar cvf Lesson1.jar Hello.class Welcome.class
//**********************************************
b.整个目录打包
F:\java\JavaLesson>jar cvf Lesson1.jar Lesson1/
已添加清单
正在添加: Lesson1/(输入 = 0) (输出 = 0)(存储了 0%)
正在添加: Lesson1/Hello.class(输入 = 416) (输出 = 286)(压缩了 31%)
正在添加: Lesson1/Hello.java(输入 = 169) (输出 = 127)(压缩了 24%)
...
(3)public类名和文件名相同
4.Java的8种数据类型
byte b;//1个字节有符号整数
short s;//2字节有符号整型
int   i;//4字节有符号整型
long   l;//8字节有符号整型
char   c;//2字节无符号整型65535种字符 采用UNICODE编码
float  f;//4字节浮点数
double d;//8字节浮点数
boolean bool=true;//两种值false和true
5.Java数据类型及语法熟悉
//**********************************************
//测试代码如下
  1. public class   Hello  
  2. {  
  3.     public static void main(String[] args)  
  4.     {  
  5.         //System.out.println("Hello World!");   
  6.         /* 
  7.         byte b;//1个字节有符号整数 
  8.         b=3; 
  9.         b=(byte)(b*3); //ok 
  10.         //b=b*3;//error int to byte possible lose of data 
  11.         System.out.println(b); 
  12.         */  
  13.         /* 
  14.         short s;//2字节有符号整型 
  15.         int   i;//4字节有符号整型 
  16.         long   l;//8字节有符号整型 
  17.         char   c;//2字节无符号整型65535种字符 采用UNICODE编码 
  18.         */  
  19.         /* 
  20.         float  f;//4字节浮点数 
  21.         f=1.3f;//ok 
  22.         //f=1.3;//error possible lose of data 
  23.         System.out.println(f); 
  24.         */  
  25.         /* 
  26.         double d;//8字节浮点数 
  27.         boolean bool=true;//ok 
  28.         //boolean bool=1 ;//error 错误  不能与整型进行相互转换 
  29.         System.out.println(bool); 
  30.         */  
  31.         /* 
  32.         //error   
  33.         if(1) 
  34.         { 
  35.          
  36.         } 
  37.         //ok 
  38.         if(true) 
  39.         { 
  40.         } 
  41.         */  
  42.         /* 
  43.         //数组定义 
  44.         //int num[3];//error 定义时不能分配空间 
  45.         //int num1[]; 
  46.         //num1=new int[3];//ok 定以后分配 
  47.         //定义时分配 
  48.         //int[] num2=new int[]{1,2,3};//ok 
  49.         //int[] num2=new int[3]{1,2,3};//error 加上大小错误 
  50.         //简单的初始化形式 
  51.         int[] num3=new int[3]; 
  52.         num3[0]=1; 
  53.         num3[1]=2; 
  54.         num3[2]=3; 
  55.         */  
  56.         /* 
  57.         //二维数组 
  58.         int[][] num4; 
  59.         num4=new int[3][4]; 
  60.         num4[0][1]=2; 
  61.         num4[0][2]=3; 
  62.         */  
  63.         /* 
  64.         //不规则数组 
  65.         int[][] num5; 
  66.         num5=new int[3][]; 
  67.         num5[0]=new int[5]; 
  68.         num5[1]=new int[3]; 
  69.         num5[2]=new int[2]; 
  70.         num5[0][4]=45; 
  71.         num5[1][2]=34; 
  72.         num5[2][1]=21; 
  73.         System.out.println(num5[0][4]); 
  74.         System.out.println(num5[1][2]); 
  75.         System.out.println(num5[2][1]); 
  76.         //System.out.println(num5[2][2]);//error 数组越界 
  77.         */  
  78.           
  79.         //二维数组初始化   
  80.         //int[][] num6=new int[][]{1,2,3,4,5,6};//error   
  81.         //int[][] num6=new int[][]{{1,2,3},{4,5,6}};//ok   
  82.         //int[][] num6=new int[2][3]{{1,2,3},{4,5,6}};//error   
  83.         //int[][] num6={{1,2,3},{4,5,6}};//ok   
  84.         //*/   
  85.         /*  
  86.         //不规则数组初始化   
  87.         int[][] num7={{1,2,3},{4,5},{6}};  
  88.         System.out.println(num7[0][2]);  
  89.         System.out.println(num7[1][1]);  
  90.         System.out.println(num7[2][0]);  
  91.         //System.out.println(num7[2][2]);//error 数组越界   
  92.         */  
  93.         /* 
  94.         //++操作依赖于具体语言 
  95.         //++测试1 
  96.         int i=3; 
  97.         //System.out.println(i++);//result 3 
  98.         //System.out.println(++i);//result 4 
  99.         int count=(i++)+(i++)+(i++); 
  100.         System.out.println(i);//result 6 
  101.         System.out.println(count);// result 12 
  102.         //++测试2 
  103.         int j=3; 
  104.         int count2=(++j)+(++j)+(++j); 
  105.         System.out.println(j);//result 6 
  106.         System.out.println(count2);// result 15 
  107.         */  
  108.     }  
  109. }  
public class   Hello
{
    public static void main(String[] args)
    {
        //System.out.println("Hello World!");
        /*
        byte b;//1个字节有符号整数
        b=3;
        b=(byte)(b*3); //ok
        //b=b*3;//error int to byte possible lose of data
        System.out.println(b);
        */
        /*
        short s;//2字节有符号整型
        int   i;//4字节有符号整型
        long   l;//8字节有符号整型
        char   c;//2字节无符号整型65535种字符 采用UNICODE编码
        */
        /*
        float  f;//4字节浮点数
        f=1.3f;//ok
        //f=1.3;//error possible lose of data
        System.out.println(f);
        */
        /*
        double d;//8字节浮点数
        boolean bool=true;//ok
        //boolean bool=1 ;//error 错误  不能与整型进行相互转换
        System.out.println(bool);
        */
        /*
        //error  
        if(1)
        {
        
        }
        //ok
        if(true)
        {
        }
        */
        /*
        //数组定义
        //int num[3];//error 定义时不能分配空间
        //int num1[];
        //num1=new int[3];//ok 定以后分配
        //定义时分配
        //int[] num2=new int[]{1,2,3};//ok
        //int[] num2=new int[3]{1,2,3};//error 加上大小错误
        //简单的初始化形式
        int[] num3=new int[3];
        num3[0]=1;
        num3[1]=2;
        num3[2]=3;
        */
        /*
        //二维数组
        int[][] num4;
        num4=new int[3][4];
        num4[0][1]=2;
        num4[0][2]=3;
        */
        /*
        //不规则数组
        int[][] num5;
        num5=new int[3][];
        num5[0]=new int[5];
        num5[1]=new int[3];
        num5[2]=new int[2];
        num5[0][4]=45;
        num5[1][2]=34;
        num5[2][1]=21;
        System.out.println(num5[0][4]);
        System.out.println(num5[1][2]);
        System.out.println(num5[2][1]);
        //System.out.println(num5[2][2]);//error 数组越界
        */
        
        //二维数组初始化
        //int[][] num6=new int[][]{1,2,3,4,5,6};//error
        //int[][] num6=new int[][]{{1,2,3},{4,5,6}};//ok
        //int[][] num6=new int[2][3]{{1,2,3},{4,5,6}};//error
        //int[][] num6={{1,2,3},{4,5,6}};//ok
        //*/
        /*
        //不规则数组初始化
        int[][] num7={{1,2,3},{4,5},{6}};
        System.out.println(num7[0][2]);
        System.out.println(num7[1][1]);
        System.out.println(num7[2][0]);
        //System.out.println(num7[2][2]);//error 数组越界
        */
        /*
        //++操作依赖于具体语言
        //++测试1
        int i=3;
        //System.out.println(i++);//result 3
        //System.out.println(++i);//result 4
        int count=(i++)+(i++)+(i++);
        System.out.println(i);//result 6
        System.out.println(count);// result 12
        //++测试2
        int j=3;
        int count2=(++j)+(++j)+(++j);
        System.out.println(j);//result 6
        System.out.println(count2);// result 15
        */
    }
}
//相应的错误类型及结果如下所示:
//**********************************************
(1) 缺少main函数
//**********************************************
错误: 在类 Hello 中找不到主方法, 请将主方法定义为:
  public static void main(String[] args)
(2) 设置了错误的类路径
//**********************************************
F:\java\JavaLesson\Lesson1>set classpath=e:\
F:\java\JavaLesson\Lesson1>java Hello
错误: 找不到或无法加载主类 Hello
(3) 类型不匹配
//**********************************************
Hello.java:8: 错误: 可能损失精度
                b=b*3;
                   ^
  需要: byte
  找到:    int
1 个错误
(4) 精度不匹配
//**********************************************
Hello.java:19: 错误: 可能损失精度
                f=1.3;
                  ^
  需要: float
  找到:    double
1 个错误
(5) 布尔类型赋值不兼容
//**********************************************
Hello.java:24: 错误: 不兼容的类型
        boolean bool=1;
                     ^
  需要: boolean
  找到:    int
1 个错误
(6) 布尔表达式中类型不兼容
//**********************************************
if(1)
{    
}
Hello.java:28: 错误: 不兼容的类型
        if(1)
           ^
  需要: boolean
  找到:    int
1 个错误
(7) 数组定义错误1   int num[3];//定义形式不能类似c语言
//**********************************************
Hello.java:35: 错误: 需要']'
        int num[3];//定义时不能分配空间
                ^
Hello.java:35: 错误: 非法的表达式开始
        int num[3];//定义时不能分配空间
                 ^
2 个错误
(8) 数组定义错误2 加上定义列表时无需指定大小
Hello.java:39: 错误: 需要';'
                int num2[]=new int[3]{1,2,3};//加上大小错误
                                     ^
1 个错误
(9)数组定义错误3  越界错误
//**********************************************
45
34
21
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 2
        at Hello.main(Hello.java:71)
(10) 数组定义错误4  数组元素初始化错误
//**********************************************
Hello.java:79: 错误: 不兼容的类型
                int[][] num6=new int[][]{1,2,3,4,5,6};//error
                                         ^
  需要: int[]
  找到:    int
Hello.java:79: 错误: 不兼容的类型
                int[][] num6=new int[][]{1,2,3,4,5,6};//error
                                           ^
...
(11) 数组定义错误5  数组元素初始化错误 不能指定数组大小
//**********************************************
Hello.java:81: 错误: 需要';'
        int[][] num6=new int[2][3]{{1,2,3},{4,5,6}};//error
                                  ^
Hello.java:81: 错误: 不是语句
        int[][] num6=new int[2][3]{{1,2,3},{4,5,6}};//error
... 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值