Day01 Java初始

来源:互联网 发布:淘宝基础版全套代码 编辑:程序博客网 时间:2024/06/15 18:46
day01
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
a.
    计算机硬件分类: Computer hardware
        运算器 :和控制器合称cpu
        控制器 :和运算器合称cpu
        存储器:内存(内存条)和外存(硬盘)
        输入设备:鼠标和键盘 
        输出设备:显示器和打印机
    
    计算机软件: Computer sofeware
        系统软件: window linux android mac ios dos
        应用软件:office QQ
    p.s.
    DOS命令是命令行操作的操作系统,为了便于用户使用,后来发展成为了图形化界面的操作系统,即Windows系统。

b.
    软件:
        按照特定顺序组织的计算机数据和指令的集合
    p.s.
    数据:就是实际生活中的姓名,年龄等信息。
    指令:就是告诉计算机如何对数据进行处理。
        
    开发:
        软件的制作过程。

    软件开发:
        利用开发工具和计算机语言制作软件的过程。
    p.s.
        系统软件和应用软件都是计算机语言编写出来的,计算机语言调用底层指令进行数据的处理。

c.    
    计算机语言:
        操作计算机就如同与计算机说话,我们让他做什么,他就做什么,前提是 我们和他说的内容是他能识别的语言,这就是计算机语言。

        当今计算机已经发展到了3个阶段:
        机器语言: 
            直接由二进制代码指令表达的计算机语言,指令就是由0和1组成的一串代码,他有一定的位数,分若干段,各段编码又有不同的含义。
        汇编语言:
            由一些特殊的符合来代替机器语言的二进制码,但计算机不能识别,只能通过某种特定的软件工具进行分析翻译。
        高级语言:
            由普通英语 if else等进行编写的源代码。 只能通过 “编译器” 将源代码翻译成计算机能够直接识别的机器语言,之后由计算器执行。
        高级语言的分类: java(android,大数据开发), c(linux), c++ c# 等。
    
d.
        软件的出现更好的实现了人与计算机之间的交互。
    交互方式:
        命令行方式:
            需要通过某种特定的指令来和计算机打交道,让计算机完成一些特定的操作,需要在控制台中操作。
        界面化界面方式:
            简单直观,易操作。
        

e.
    doc命令窗口的使用:
        win+r 输入cmd 回车即可。

    基础指令:
        切换盘符: d:
        列出当前盘符下的文件和文件夹:dir
        创建目录: md
        删除目录: rd
        切换到指定目录: cd  
        切换到指定目录的某个长文件名,如:CloudMusic:   cd C*
        退回上一级目录: cd..
        退回根目录: cd\
        删除文件,以及删除一堆后后缀名.txt的文件: del b.txt 和 del *.txt
        退出命令行: exit
        清屏:cls
    
            
f.
    java语言描述:
        java是SUN公司,于1995年推出的一款高级语言。
        java语言是一种面向Internet的编程语言,即面向互联网的语言。        
        由于java技术在web方面不断成熟,java语言已经是web应用程序首选的开发语言。
        java是一款简单易学,完全面向对象,安全可靠,与平台(操作系统)无关的编程语言。
    p.s.
        java是允许使用者将应用程序通过Internet(互联网的方式)从远端服务器传输到本地机上并执行的一种语言。

    Java语言的三种技术架构:
        j2se:
            是完成一些普通桌面应用式程序和商务应用程序提供的一种解决方案,该版本是其他两个版本的基础。
        j2me:        
            是用于开发电子产品和嵌入式设备提供的一套解决方法,如摩托罗拉等老旧手机上的java小程序。
        j2ee:
            是为开发企业环境下的应用程序提供的一套解决方法,如 servlet, jsp等,主要针对web的开发。
    p.s.
        由于现在已经出现了android,ios,windows phone等手机操作系统,所以j2me架构已经基本上不用了。

g.
    java语言特点:
        主要有: 开源, 跨平台, 面向对象, 多线程, 安全性,分布式处理。
    
    
h.
    什么是java的跨平台性?
        贯彻了 “一处编译,到处运行” 的原理,也就是说用java编写的应用程序可以在不同的操作系统上运行。前提是:在不同的操作系统上都有对应的JVM才行。
    
    原理是什么?
        1)只要在不同的操作系统上安装一个该“操作系统的jvm” 即可,也就是java虚拟机, 由不同操作系统上的jvm来负责java程序在该系统上的运行。
        2)因为有了jvm 所以同一个java程序各种不同的操作系统中都可以执行。这样就实现了java程序的跨平台性,也就是说java语言具备良好的可移植性。
        
    不同操作系统的jvm?
         Windows的jvm, linux的jvm, ios的jvm。    jvm是不能跨平台的。
         jvm是不跨平台的,不同操作系统上有不同的JVM。
    p.s.
        jvm是不跨平台的,不同的操作系统有不同版本的jvm。
        用C++语言编写的程序可以在windows系统可以直接运行,而在Linux系统则不可以。这是因为windows系统是由c和c++语言编写的,windows中内置了c和c++的解析器,所以c和c++语言编写的重写可以直接在win系统中运行,但java语言编写的程序想要在win系统中运行,就需要在win系统中安装一套能够解析,执行java程序的软件,就是jvm虚拟机。类似的linux,mac系统中想要执行java语言编写的程序,也需要安装各自系统对应的jvm,通过这种方式,就实现了java “一次编译,到处运行”的跨平台性,jvm的作用就是搭建了java语言编写的程序和操作系统之间的桥梁。


i.
    JRE和JDK
    jre(java runtime environment)java运行环境。
        jre包含jvm和java程序所需的核心类库等,需要运行一个开放好的java程序,只需要在计算机上安装一个jre即可,也就是说一个不懂开放的人的电脑上安装一个jre就能运行java程序。
    
    jdk (java development kit) java开放工具包。
        是提供给开发人员即程序员用的, 其中包含java开发工具,也包含jre, 因为jdk中就有jre,所以只安装jdk即可,不用单独安装jre。
        开发工具: javac.exe(编译工具), jar.exe(打包工具)等。
    
    简单来说:使用jdk开发完的java程序,交给jre运行即可。
    
    小问题:为什么让jdk中包含jre?
        因为是方便开发人员开发完程序后,运行一下程序看结果用的。 
        最重要的是,jdk中的开发工具都是java语言编写的应用程序,为了方便使用才打包成.exe文件,如果没有jre,这些工具就用不了了。
   
    简单记:
    jre: jvm+ 核心类库。
    jdk: jre+ java开发工具(javac/jar.exe)。
    
    p.s.
        核心类库:JavaSEAPI(其实里面都是一些jdbc,jni,jndi等编写好的底层程序)即底层代码,方便我们调用,利用这些底层程序做我们想做的事情。
        java开发工具:jar.exe ,apt.exe ,java.exe ,javac.exe 等

j.
    jdk的下载和安装
         登录Oracle公司官网进行下载, 建议都是下载32(86)位,方便以后使用,避免错误。
    jdk目录介绍
        1. bin: 用于存放一些可执行文件,如:javac.exe, jar.exe, java.exe等,都是由java语言编写的,都是开发java程序所需要的命令行文件。
        2. db: 是一个小型数据库, 在使用jdbc时,无需额外安装一个数据库软件,直接使用javaDB即可。
        3. jre: 是java程序运行环境,此目录是java运行时环境的根目录,包括java虚拟机,运行时的类包。
        4. include: 因为java的前身是c++实现的,而且jdk又是通过c和c++实现的,所以在启动时需要引入一些c语言的头文件, 该目录就是用于存放这些头文件使用的。
        5. lib: lib是libaray的缩写,意为java类库和库文件,是开发工具使用的归档包文件。
        6. src.zip: 是jdk的核心类源代码。可在开发工具中可通过导入该包来实现源代码的查看。
        
    p.s.
        这些java.exe, javac.exe并非图形化界面,双击执行是无效的,而是通过命令行方式操作的命令文件,需要在命令行窗口中使用的。
    
    jdk的配置过程    
        1)新建环境变量后,命名的是:JAVA_HOME 里存放的是:C:\Program Files (x86)\Java\jdk1.8.0_111
            jdk安装中注意是的:%JAVA_HOME% 表示动态获取名称为JAVA_HOME环境变量的值。
        2)在path路径下最前面添加 %JAVA_HOME%\bin; 表示java环境配置完成。
        3)cmd后在命令窗口,输入javac,如果下列有东西,就表示配置成功。

k. 
    开发工具主要介绍
        editplus eclipse myeclipse(收费) androidstudio


l.     
    HelloWorld编写。
         class HelloWorld {
            public static void main(String[] args) {
                System.out.println("你好");
            }
        }
        
    p.s.
        class: 是java关键字,用于定义类,java语言的程序代码都是定义在类中的。
        关键字:被java语言赋予的特定含义的单词。
        HelloWorld: 完了方便使用这个类,给类自定义的类名。
        {}: 定义该类中的代码的使用范围。
        
        写代码,阅读性第一,功能性第二,一直注意写代码的格式。        
        源文件和类名可以不一致,但当class前有public修饰时,必须一致,所以平时建议都写成一致的。
        System.out.println()和System.out.print() 是由区别的,前者是打印后换行。
        
        javac.exe是对源文件.java文件进行编译,编译的过程就是对java抽象进行语法性检查,一旦有错误,编译就不通过。

        java命令可以启动jvm,然后找到对应的.class文件,再寻找到程序的入口,也就是main方法,然后调用该方法执行java程序。
        main方法的出现可以保证出现的独立运行。
        
        

m. 
    path 和 classpath路径的区别?
        path路径下都是一些可执行性文件(.exe) 如: java.exe, javac.exe等。
        而classpath路径下都是一些java的类文件, 即.class文件, 只有当所有的.class文件在你所指定的classpath路径下才能去执行, 但是一个classpath路径下有多个class文件而且如果有重名的.class文件,就不能编译了。
        
    p.s.
        jvm查找类文件的顺序:
            1)如果没有配置classpath环境变量,jvm只在当前目录下查找要运行的类文件。
            2)如果配置了classpath环境,jvm会先在classpath环境变量值的目录下查找要运行的类文件。


n.
    java中的注释
        用于对程序的解释说明,包括:单行/多行/文档注释。
        单行: //
        多行: /* */
        文档注释: /** */  是用来生成说明书的  请参考第7天内容。

        单行可嵌套单行注释。
        多行可嵌套单行注释。
        文档可嵌套单行。


o.
    java语言基础由关键字,标识符,注释,常量和变量,运算符,语句,函数和数组等组成。
    关键字
        是java被赋予的特殊含义的单词。
    特点
        关键字中所有字母小写。
    关键字注意事项
        goto const 作为java的保留字,不可被当成普通单词使用。

p.
    标识符
        是用于给类,接口,方法,变量等名字使用到的字符序列。
    组成规则
        英文字母大小写
        数字 0—9
        符号:&和_    
    注意事项
        不能以数字开头,但可以以数字结尾。
        区分大小写。
        不能是java中的关键字。
        单词直接不能有空格,但可以使用骆峰命名的规则, 如: Hello World 不合法。
        只能有&和_特殊符号, 如: q# 不合法。
        不能有小数点的出现, 如: a2.3 不合法。

    p.s.
        java中严格区分大小写。
        在起名字的时候,为了提高阅读性,尽量名字起得有意义。
        公司中经常通过 “_” 来代表某一类名称,如:_temp。
            通过 “$” 来分割主名称和子名称,例如:Computer$Red 即电脑红色。

q. 
    标识符中常用的命名规则
        包:
                要求全部小写,一般是公司域名的倒写。
                如: 
                    www.baidu.com;
                    com.baidu.包的作用。

        接口或类名:
                 是一个单词时,首字母大写, 如: Interface。            
                 是多个单词时,每个字母的首字母大写,如:InterfaceImpl。
                        
        变量或方法:
                是一个单词,每个字母都小写,如:init(), int a = 3;
                是多个单词,从第二个单词开始首字母大写, 如:getName(), setName(), int maxValue = 6。int bigMax = 7;
            
        常量:
                是一个单词,所有字母大写, 如:public static final int MAX = 10。
                是多个单词,每个单词都大写,且每个单词用下滑写隔开, 如: MAX_VALUE, MIN_VALUE。
            

    p.s.
        在EditPlus编辑器中,关键字是蓝色,jdk提供我们使用的类是红色。
    
        
原创粉丝点击