本帖最后由 紅塵 于 2017-12-26 23:21 编辑
常用DOS命令 盘符 盘符切换 dir 列出当前目录 md(make directory) 创建目录 rd(remove directory) 删除目录 cd(change dirextory) 进入一个文件夹 cd.. 返回上一级目录 cd\ 返回根目录 del(delete) 删除文件(del *.txt ——删除所有后缀为txt的文件) cls(clear) 清屏 JAVA语言跨平台,Java虚拟机(JVM)不跨平台,java在JVM的支持下拥有跨平台的特性。 JRE:Java Runtime Environment, Java运行时环境,包括Java虚拟机(JVM)和Java程序所需要的核心类库 JDK:Java Development Kit,Java开发工具包,JDK是提供给Java开发人员使用的,其中包含了java的开发工具包,JDK中包括了JRE。其中的开发工具包括:编译工具(javac.exe),打包工具(jar.exe),运行工具(java.exe)等。 JRE=JVM+library(核心类库) JDK=JRE+TOOL(开发工具) 使用JDK开发完成的JAVA程序,交给JRE去运行 bin目录:存放java命令行工具 编译运行:java.exe执行时自动加.class后缀,所以java Demo能运行Demo.class文件,而java Demo.class将报错,无法找到相应文件。 环境变量配置:将应用程序的目录配置到环境变量中,windows执行程序时,首先在当前目录下找,找不到的话,就去环境变量的Path中找。 PathEXT:记录windows常见应用程序,如.exe .bat等 Path:记录应用程序所在路径信息(一般将配置添加到路径最前方,因为最前方的路径优 先查找,保证优先权,提高java运行效率) classPath:java执行class文件时,JVM会在classPath路径下查找要执行的class。若配置了classPath则在classPath下查找,若没有配置classPath,则默认当前目录为classPath路径。 若classPath的路径没加“;”,则若classPath下没找到class文件,不再查找当前目录;若classPath的路径没结尾加上“;”,则若classPath下没找到class文件,会在当前目录再查找一次。classPath中“.”代表当前目录
所以,java环境配置首先要将JDK的bin目录路径添加到环境变量的path中,path中不同路径以分号分隔。 Path技巧性配置:新建环境变量,JAVA_HOME,环境变量值为bin所在目录;在Path中配置% JAVA_HOME %\bin,以后JDK路径改变只需改变JAVA_HOME而不需要改动path,防止更改path时误操作其他路径信息。(%变量%用于取得变量的值) Path环境变量临时配置:windows命令行中的SET命令用于显示、设置、删除windows环境变量,使用set设置环境变量,此更改仅在当前命令行界面有效,可用于环境变量的临时配置。 path\classPath等修改后需要重新打开控制台,以加载最新修改 (classPath没有配置的必要,可以不配置) 整数变量默认为int型,浮点型变量默认为double型。声明long型数据,若数据超过int的最大值,则必须后接'l'或者'L';声明float类型数据,必须后接'f'或者'F',否则会抛错。 变量必须先初始化再使用。 boolean只能用true、false表示而不能用0、1 Java命名规范: (1)包名:多单词所有字母均小写 xxx.yyy.zzz (2)类名接口名:多单词所有单词首字母大写 DemoClass (3)变量名和函数名:多单词第一个单词小写,其余单词首字母大写 sayHello( ) (4)常量:全字母大写,多单词以下划线分隔,类似DEMO_VALUE 注释 (1)单行注释: //注释文字 (2)多行注释: /*注释文字*/ (3)文档注释: /**注释文字*/ 对于单行注释和多行注释,注释文字不会被JVM执行;对于文档注释,它能被java的bin目录下的javadoc工具解析成html文件(即说明书)
单行注释可以嵌套;多行注释不可以嵌套; 运算符 (一)逻辑运算符 (1)^ :逻辑异或运算,二元运算符,参与运算的双方同为false,不同为true (2)&和&&:逻辑与,&不论左边运算为何结果,右边都会继续运算;&&称为短路与,若左边运算为false,则整个表达式结果为false,不再运算右边,直接得false (3)|和||:逻辑或,|不论左边运算结果是什么,右边都会继续运算;||称为短路或,若左边运算结果为true,则整个表达式值为true,不再运算右边的表达式 (二)位运算 (1)&按位与 (2)|按位或 (3)^按位异或:异或可用于两个变量值互换 int a=3,b=4; int c=a^b //C=7 int d=c^a //d=c^a=a^b^a=b=4 int e=c^b //e=c^b=a^b^b=a=3 (4)~按位取反(不考虑符号位,每一位都取反,运算后得到的是补码,显示出来的是 原码) /*使用位移进行乘除运算效率高*/ (5)<<左移:3<<2——3左移2位(后补0),左移一位相当于乘2 (6)>>右移:3>>1——3右移1位(前补0),右移一位相当于除2 (一)for循环 for(初始化条件表达式(从哪里开始);循环条件表达式(在什么情况下结束);循环后 执行的控制条件(初始化条件发生什么变化)) { 循环体:想做什么事 }
执行流程:1.执行初始化表达式,进行初始化 2.执行循环条件表达式(一个判断表达式,运算结果为boolean类型),若 执行结果为false,立即结束for循环;若结果为true,首先执行循环体, 然后再执行循环后的操作表达式。然后继续执行步骤2。 注意事项:初始表达式仅执行一次; 循环条件表达式最少执行一次,至多执行N次(N>1) 循环体以及循环后的操作表达式能被执行,至多执行N-1次 (二)while循环 while(条件表达式) { 循环体; }
for和while的区别:初始化条件的变量在for结束后,在代码块外无法使用,而while条件表达式的变量定义在代码块外,while执行结束后,代码块外依旧可以使用;出于节省内存和安全性方面的考虑,建议使用for 修饰符:public static 返回值类型:这段程序最终返回结果的数据类型 函数名:函数的名称,方面调用 参数: 参数类型:就是数据类型 形式参数:接受实际参数的变量 实际参数:实际参与运算的变量 执行语句:功能代码 返回值:程序的结果 return:将程序的结果返回给调用该函数的地方 函数是平级的,不能嵌套定义,只能在函数中调用另一个函数 (2)return关键字 return单独存在,后面不能有语句,因为执行不到,所以会报错 函数是通过关键字return结束的。 return语句分两种:显示的结束,隐式的结束 当明确需要返回一个值的时候,需要显示的结束,"return 返回值;" 当不需要返回一个值的时候,可以不用写return,因为jvm默认会加上一句"return;" 数组是一个对象,是同一种数据类型的集合。数组即一个容器。 数组的优点:数组中的元素会自动从0开始编号,方便操作 数组用于封装数据,就是一个具体的实体。 数组中的每一个数据都是该数组的元素。 (1)声明方式 int x[ ]——定义一个数组名为x的数组 int[ ] x,y,z——这种方式是JAVA特有的,代表int[ ]后面出现的所有变量都是数组变量 (2)数组的创建 使用new创建数组,数组是一个对象。 元素类型[] 数组名 = new 元素类型[元素的个数]; 元素类型[] 数组名= {元素1,元素2...}; 元素类型[] 数组名= new 元素类型[]{元素1,元素2...}; 面向对象的特征——继承、封装 、多态 以后的开发过程就是找对象来用,没有对象,就创建一个对象。 找对象,建立对象,使用对象,并维护对象的关系。 类和对象的关系: 类:就是对现实生活中事物的描述,是属性和行为的集合,可以理解为一张图纸,是 一个抽象的概念
对象:就是这类事物,实实在在存在的个体。
想要描述:提取对象中共性内容。对具体的抽象。
映射到Java中描述就是class定义的类。类中属性即成员变量,行为即成员函数,定义类就是定义类的成员(成员变量+成员函数) 具体对象就是对应Java在堆内存中用new建立实体。 格式: 类名 对象名=new 类名(); 成员变量:对象名.成员变量; 成员方法:对象名.成员方法(); 成员变量和局部变量的区别 定义位置的区别:成员变量定义在类中,方法外;局部变量定义在方法中,或者是方法的形参 初始化值的问题:成员变量有默认初始化值;局部变量没有默认初始化值,必须定义后赋值才能使用。在使用变量的时候,首先在局部范围找,没有的话在成员变量找,在使用过程中,遵循一个就近原则
存储位置的区别:成员变量定义在堆中,随着对象的存在而存在,随着对象的消失而消失;局部变量存储在栈中,随着方法的调用而存在,随着方法调用完毕而消失 匿名对象 匿名对象是对象的一种简化方式 格式:new 类名() 调用:new 类名(). 成员名称; 使用情况:1.只使用一次的时候;2.作为实参传递给方法; this代表其所在函数所属对象的引用。换言之,this就代表本类对象的引用。谁调用,this就代表谁。每一个成员方法里面都有一个this代表当前对象。 什么时候用this:1.当函数内部需要用到调用该函数的对象时,如this.name=name; 2.构造方法中相互调用,但是此时this([参数])必须写在构造方法第一行。
目前就只有这么多啦. |