黑马程序员----------Java语言概述

                           ----------------------android培训java培训、期待与您交流! ----------------------

初来北京,今天是我们的第一节课,看着一个个陌生的面孔为了自己的梦想来到这里,我的心被深深的触动了.

Java语言概述

     它最初被命名为Oak,目标设定在家用电器等小型系统的编程语言,来解决诸如电视机、电话、闹钟、烤面包机等家用电器的控制和通讯问题。由于这些智能化家电的市场需求没有预期的高,Sun放弃了该项计划。就在Oak几近失败之时,随着互联网的发展,Sun看到了Oak在计算机网络上的广阔应用前景,于是改造了Oak,以“Java”的名称正式发布。
    (1)Java语言的发展史
        Java之父 -- 詹姆斯·高斯林(James Gosling)
    (2)Java语言的平台
        A:J2SE 基础版,桌面应用。
        B:J2ME 微型版,手机开发。(android,ios)
        C:J2EE 企业版,所有浏览器访问的应用程序。

        注意:JDK5以后改名
            JavaSE,JavaME,JavaEE

        J2SE是学习其他两门的基础。
    (3)Java语言的特点
        

1.平台无关性
平台无关性是指Java能运行于不同的平台。Java引进虚拟机 原理,并运行于虚拟机,实现不同平台的Java接口之间。使用Java编写的程序能在世界范围内共享。Java的数据类型与 机器无关,Java虚拟机(Java Virtual Machine)是建立在硬件和操作系统之上,实现Java二进制代码的解释执行功能, 提供于不同平台的接口的。
2.安全性
Java的编程类似C++,学习过C++的读者将很快掌握Java的精髓。Java舍弃了C++的指针对存储器地址的直接操作,程序运行时,内存由操作系统分配,这样可以避免病毒通过指针侵入系统。Java对程序提供了安全管理器,防止程序的非法访问。
3.面向对象
Java吸取了C++面向对象的概念,将数据封装于类中,利用类的优点,实现了程序的简洁性和便于维护性。类的封装性、继承性等有关对象的特性,使程序代码只需一次编译,然后通过上述特性反复利用。程序员只需把主要精力用在类和接口的设计和应用上。Java提供了众多的一般对象的类,通过继承即可使用父类的方法。在Java中,类的继承关系是单一的非多重的,一个子类只有一个父类,子类的父类又有一个父类。Java提供的Object类及其子类的继承关系如同一棵倒立的树形,根类为Object类,Object类功能强大,经常会使用到它及其它派生的子类。
4.健壮性
Java致力于检查程序在编译和运行时的错误。类型检查帮助检查出许多开发早期出现的错误。Java自己操纵内存减少了内存出错的可能性。Java还实现了真数组,避免了覆盖数据的可能,这些功能特征大大提高了开发Java应用程序的周期。并且Java还提供了Null指针检测、数组边界检测、异常出口、Byte code校验等功能。
5.解释型
我们知道C,C++等语言,都是针对CPU芯片进行编译,生成机器代码,该代码的运行就和特定的CPU有关。Java不像C或C++,它不针对CPU芯片进行编译,而是把程序编译成称为自字节码的一种“中间代码”。字节码是很接近机器码的文件,可以在提供了java虚拟机(JVM)的任何系统上被解释执行。
6.动态
java程序的基本组成单元就是类,有些类是自己编写的,有些是从类库中引入的,而类又是运行时动态装载的,这就使得Java可以在分部环境中动态的维护程序及分类,而不像C++那样,没档期类库升级以后,如果想让程序具有新类库提供的功能,就需要修改程序,重新编译。
  注意: java本身不是跨平台的,JVM即java虚拟机是跨平台的

4:JDK的下载与安装
    (1)JDK的下载。
        通过官网:http://www.oracle.com
    (2)JDK的安装
        A:傻瓜式安装,会点击下一步即可。
        B:注意:
            a:请不要在中文目录和有特殊字符的目录(空格)
            b:请把所有开发相关的软件放到一个目录中。
        C:JRE是不需要单独安装的。

5:HelloWorld案例(最基本的一个案例)
    (1)开发工具
        A:记事本windows自带的
        B:高级记事本EditPlus
        C:集成开发工具Eclipse/MyEclipse
    (2)一个HelloWorld案例
        最终代码:
            class Demo
            {
                public static void main(String[] args)
                {
                    System.out.println("Hello World");
                }
            }

        解释:
            A:java语言的最基本单位是类。用class表示
                定义类的格式:
                    class 类名
            B:程序如果要运行,就必须有main方法,它是被jvm调用。
                格式:
                    public static void main(String[] args)
            C:程序如果要输出一些内容,就必须使用输出语句。
                格式:
                    System.out.println("Hello World");
    (3)一个Java程序的执行
        A:开发源程序(.java文件)
            Demo.java
        B:通过javac命令编译(.class)
            javac Demo.java
        C:通过java命令执行
            java Demo
    (4)常见的错误及注意事项
        A:文件扩展名导致编译失败。把隐藏文件扩展名给显示出来。
            win7,win8的同学如果不会单独问我。
        B:非法字符错误
            只要看到是非法字符,肯定是中英文问题。
            因为我们要求所有的符号全部是英文状态的。
        C:注意大小写问题
            class -- Class
            String -- string
            System -- system
        D:括号的对应问题
            在java程序中,括号都是成对出现的。
            所以,我建议在编写程序时,请遇到括号,成对打。
        E:main方法格式错误    
            public static void main(String [] args){ }
        F:当java源文件发生变化后,请重写编译在运行
        G:缩进问题
            写代码,遇到{},请缩进一个tab位置。

6:环境变量
    (1)path环境变量的作用
        让javac和java命令可以在任意的目录下使用。
    (2)path环境变量的配置(掌握)
        A:只修改path
            D:\develop\Java\jdk1.7.0_45\bin;以前的path
        B:先建立一个JAVA_HOME,后修改path
            新建:JAVA_HOME 值是 D:\develop\Java\jdk1.7.0_45
            修改:%JAVA_HOME%\bin;以前的path

        推荐使用B方案。
    (3)classpath环境变量的配置
        让指定的class文件在任意目录都可以被访问。

        技巧:在最左边配置一个.;
              这样做的好处就是能够先在当前目录下查找并执行。

     第一天学到了这些基本知识,对于我这样么有任何计算机基础的人来说,确实是觉得压力很大,但是我相信在我的努力下一定能够学好Java的.

    加油!!!

                              ----------------------android培训java培训、期待与您交流! ----------------------

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值