zoukankan      html  css  js  c++  java
  • java 初学者需注意问题

    1、Java为什么能跨平台运行?

      Java语言编写的程序既是编译型的,又是解释型的。程序代码经过编译之后转换为一种Java字节码的中间语言,Java虚拟机即JVM将对字节码进行解释和运行。编译只进行一次,而解释在每次运行程序时都会进行。

      Java程序运行在虚拟机上,每个平台都有JVM,所以Java能实现“一次编译,到处运行”。

    2、请尝试安装和配置JDK,并给出安装、配置JDK的步骤。

    jdk可以从Oracle官网上下载,下载后直接安装即可,傻瓜式安装点击下一步,不过切记安装目录中不要有中文。

    特别提示:jdk和eclipse保存的路径不能有中文字符

    1.打开我的电脑--属性--高级--环境变量

    2.新建系统变量JAVA_HOME

    变量名:JAVA_HOME
    变量值:jdk的目录,比如F:jdkjdk1.8.0_91_x64

    3. 选择“系统变量”中变量名为“Path”的环境变量

    双击该变量,把JDK安装路径中bin目录的绝对路径,添加到Path变量的值中,并使用半角的分号和已有的路径进行分隔。

    变量名:Path
    添加的变量值:%JAVA_HOME%in;%JAVA_HOME%jrein;

    配置完成后在cmd中输入java会出现下图所示,则表示环境变量配置成功。

    这是java的环境配置,配置完成后直接启动eclipse,它会自动完成java环境的配置

    3、请问配置JDK时环境变量pathJAVA_HOME的作用是什么?

    JAVA_HOME环境变量。它指向jdk的安装目录,Eclipse/NetBeans/Tomcat等软件就是通过搜索JAVA_HOME变量来找到并使用安装好的jdk。

     4、利用文本编辑器输入课堂上练习的Hello.java,并在JDK环境下编译和运行。

    public class hello{
        public static void main(String[] args){
            System.out.println("Hello World!");
        }
    }

     5、如果DOS命令下输入:java Hello出现以下结果:Bad command or the file name可能是什么原因?

    (错误的命令或文件名) 输入的命令不存在,或者不在指定的路径中。 确保键入了正确的命令、在正确的位置留出了空格和使用了正确的路径名。

    原因:命令或文件名错,路径出错。

    这是我开始学JAVA是犯的错,java HelloWorld.class,然后就报错。后来才弄明白,应该是java HelloWorld。

    6、如果第4题中在DOS命令下输入:java Hello出现以下结果:Exception in thread “main” java.lang.NoClassDefFoundError: Hello

    1)、你的文件名对吗?JAVA要求你的文件和你的类名严格对应的。

    比如 public class HelloWorld{ .....

    那么文件名一定只能是HelloWorld.java,看仔细了!

    2)、你的程序中有main方法吗?参数什么的对吗?

    main方法的声明应该是这样子的:

    public static void main(String[] args)

    7、在第4题中Hello.class所在路径下,输入命令:java Hello.class,会出现什么结果,为什么?

     应该是java hello   java hello已经是加载类,不能再加一个class。

    8、请描述基本数据类型和引用数据类型的区别?

    主要区别:内存使用:基本数据类型的值直接存储在栈中,而引用数据类型将值存储在堆内存中,把首地址存储在栈内存,这样节省内存占用,使用引用数据时先从栈中找到相应地址,通过地址去找到值。

    变量的赋值:基本数据类型由于在栈中存的是实际值,直接把值赋给新变量;引用数据类型在栈中存的是首地址,所以它会将首地址赋给新变量。

    9、Java主要有那几种文件类型?各自的作用是什么?

    1)、源代码:.java文件,编写的源代码

    2)、字节码:.class文件,编译后的生成的文件

    3)、jar包:把相关的字节码文件压缩之后形成的,便于使用和传递

    两个小程序:

    1、编写一个Java程序,计算半径为3.0的圆周长和面积并输出结果。进行计算并输出结果。

    public class test02circle {
        public static void main(String[] args){
            double r,zhouchang, mianji;                           //若定义常量PI:final double PI=3.1415;后面可直接用常量PI
            r=3.0;
            zhouchang=2*Math.PI*r;
            mianji=Math.PI*Math.pow(r, 2);
            System.out.println("周长是:"+zhouchang);
            System.out.println("面积是:"+mianji);
        }
    }

    2、编写一个Java项目,定义包,在包下定义包含main方法的类,在main方法中声明8种基本数据类型的变量并赋值,练习数据类型转换。

    public class test03_shujuleixing {                        //创建类
        public static void main(String[] args){               //主方法
            byte mybyte = 127;                                //声明byte型变量并赋值
            short myshort = 32564;                            //声明short型变量并赋值
            int myint = 45784612;                             //声明int型变量并赋值
            long mylong = 456789451;                          //声明long型变量并赋值
            long result = mybyte+myshort+myint+mylong;        //获得各数进行相加  隐性转换
            System.out.println(result);
            float myfloat =1.234f;                            //声明float型变量并赋值
            double mydouble = 1.23445;                        //声明double型变量并赋值
            double result2 = result + myfloat + mydouble;     //获取各数进行相加  隐性转换
            System.out.println(result2);
            char mychar = 'a';                                //声明char型变量并赋值
            //字符集 unicode表 a在unicode表中排序是97
            System.out.println("unicode表中a是"+(int)mychar+"位");
            int p = 23456;
            char x= (char)p;                                  //将int型强制转换成char型
            System.out.println("unicode表中第23456位是:"+x);
            boolean boolean1 = true;                          //声明布尔型,并赋值只能赋值true或false
            boolean boolean2 = false;
            System.out.println(boolean1);
        }
    
    }

     PS:java初学者在刚学java时会要到这些常见的问题,将这些问题搞懂,对java会有一个基本的了解,对以后学习java有很大的帮助。

      

  • 相关阅读:
    hdu 1199 Color the Ball 离散线段树
    poj 2623 Sequence Median 堆的灵活运用
    hdu 2251 Dungeon Master bfs
    HDU 1166 敌兵布阵 线段树
    UVALive 4426 Blast the Enemy! 计算几何求重心
    UVALive 4425 Another Brick in the Wall 暴力
    UVALive 4423 String LD 暴力
    UVALive 4872 Underground Cables 最小生成树
    UVALive 4870 Roller Coaster 01背包
    UVALive 4869 Profits DP
  • 原文地址:https://www.cnblogs.com/jingzhenhua/p/5861656.html
Copyright © 2011-2022 走看看