java基础入门笔记

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第一天常用的DOS命令:dir显示当前目录下的文件和子目录信息cls清屏:切换盘符cd进入指定的目录cd..返回上一级cd\返回盘符根目录运行应用程序:程序完整名称参数例如D:\C:\windows\notepad基本类型和引用类型的区别:基本类型自然不用说了,它的值就是一个数字,一个字符或一个布尔值。引用类型是一个引用对象,值是什么呢?它的值指向内存空间的引用,就是地址,所指向的内存中的保存着的变量所表示的一个值或一组值。inta;a=250;//声明变量a的同时,系统给a分配了空间。引用类型就不是了,只给变量分配了引用空间,数据空间没有分配,因为谁都不知道数据是什么,整数,字符?我们看一个错误的例子:MyDatetoday;today.day=4;//发生错误,因为today对象的数据空间未分配。那我们怎么给它赋值?引用类型变量在声明后必须通过实例化开辟数据空间,才能对变量所指向的对象进行访问。举个例子:MyDatetoday;//将变量分配一个保存引用的空间today=newMyDate();//这句话是2步,首先执行newMyDate(),给today变量开辟数据空间,然后再执行赋值操作//引用变量赋值MyDatea,b;//在内存开辟两个引用空间引用传递和值传递:引用类型:除了在函数传值的时候是引用传递,在任何用=向对象变量赋值的时候都是引用传递。值传递:基本类型的传递都属于值传递,和C语言一样,当把Java的基本数据类型(如int,char,double等)作为入口参数传给函数体的时候,传入的参数在函数体内部变成了局部变量,这个局部变量是输入参数的一个拷贝,所有的函数体内部的操作都是针对这个拷贝的操作,函数执行结束后,这个局部变量也就完成了它的使命,它影响不到作为输入参数的变量。这种方式的参数传递被称为值传递。a=newMyDate();//开辟MyDate对象的数据空间,并把该空间的首地址赋给ab=a;//自增自减运算:符号写在前面,还是后面,在变量自己独立运算的时候,没有区别;但是变量,要是参与了其他运算,有区别了。例如:j=i++++后算,先将i的值赋值j,i自己再++;Inti=5;Intj=i++;System.out.println(i);//6System.out.println(j);//5n=++m++先算,变量m++变量在赋值给n;inta=3;intb;b=a+++10;System.out.println(a);System.out.println(b);上面代码的输出结果a值为4,b值为13;赋值运算符:+=-=*=/=%=publicclassOperatorDemo2{publicstaticvoidmain(String[]args){bytex=10;x+=20;//相当于x=(byte)(x+20);System.out.println(x);}比较运算符:计算结果只有两个可能,true或者false计算的结果的数据类型,boolean类型==!===逻辑运算符:对你两个boolean类型数据之间进行计算结果也是boolean类型&:一边是false,计算结果是false,|:一边是true,计算结果是true^(异或运算符):两边相同为false,不同为true!:取反!true=false!True=false&&:短路与,一边是false,另一边不运行||:短路或,一边是true,另一边不运行三元运算符:公式:布尔表达式?结果1:结果;案例:实现商品库存案例第三天引用数据类型和基本数据类型的区别:基本:inta=1;引用:格式:类型变量名=new类型();举例创建出Scanner类的变量Scannersc=newScanner();每个引用类型,都有自己的功能,如何使功能公式:变量.功能名字()Scanner类,作用,让我们在命令行中,接受键盘的输入;使用Scanner类的步骤:1.导入包,指明类所在的文件夹,关键字import类在Java文件夹-util文件夹2.公式,创建Scanner类型变量3.变量.使用Scanner类中的功能,完成键盘输入Scannersc=newScanner(system.in);Syetem.in接受键盘输入功能:nextInt()接受键盘输入,保证输入的是整数,功能接受的数据就是整数;Scanner的另一个功能next()接受键盘输入的字符(数字和字符串之间使用+表示的是链接)Random类,作用产生随机数步骤:1导入包,Random类,也在java.util文件夹2.公式:创建出Random类型的变量3.变量.调用Random类中的功能,产生随机数。Random类提供的功能:名字nextInt()产生一个随机数出现随机数的范围,在nextInt(写一个整数),整数:随机数出来的范围在0-指定数之间的随机数nextInt(100)0-99产生一个随机数,范围1-100之间nextInt(100)0-99+1产生浮点的随机数:功能名字nextDouble()随机数的范围0.0-1.0随机数:伪随机数,虚拟机根据人写好的算法产生出来的Ififelseifelseif等循环WhileFordo.....whileFor嵌套循环(for)循环次数=外循环次数*内循环次数外循环控制行数;内循环控制列数Break结束的是循环,在内循环里面结束的是内循环,外循环继续Continue,在循环中结束本次循环,继续下一次的循环案例学习:猜数字游戏第四天选择语句:switch语句数组公式:数据类型[]变量名=new数据类型[存储元素个数]数组长度:数组名.length数组的最小索引是0,最大索引=length-1数组的两种定义方式:一,数据类型[]变量名=new数据类型[]{元素1,元素2,。。。}new后面的中括号不允许任何东西二,数据类型[]变量名={元素1,元素2,。。。}数组的遍历将数组中的每个元素分别获取出来数组常见的两个异常:数组的索引越界异常,空指针异常Day04_14-15数组的遍历原理以及遍历比较最大值和最小值。Day04_16-17-18二维数组的存储结构和二维数组的定义以及访问定义:int[][]arr={{},{},{},…}访问:arr[2][1]Day04_19二维数组的遍历,嵌套for循环。Day04_20二维数组的叠加求和;Day04_21-23-24随机点名器的案例第五天Day05_1-2方法的定义修饰符返回值类型方法的名字(参数、、、){方法的功能主体循环、判断、变量、比较、运算return}修饰符:固定写法publicstatic返回值类型:方法在运算后,结果的数据类型方法名:自定义名字,方法名字首字母小写,后面的每个单词首字母大写参数列表:方法在运算的过程中,时候有未知的数据,如果有未知的数据,定义在参数列表上(定义变量)return:方法的返回,将计算的结果返回。结束方法Day05_9方法的重载在同一个类中,允许出现同名的方法,只要方法的参数不同(参数的个数,参数的类型,顺序)对于重载的调用,根据参数传递区分Day05_12方法的参数是引用类型:传递的是内存地址第六天Day06_3类的定义格式:publicclass类名{属性定义修饰符数据类型变量名=值方法的定义修饰符返回值类型方法名(参数列表)}Day06_10ArrayList集合的使用也是引用数据类型步骤:、1、导入包2、创建引用类型的变量数据类型集合存储的数据类型变量名=new数据类型集合存储的数据类型();集合存储的数据类型:将数据存储到集合容器中集合存储的数据,8个基本类型对应8个引用类型集合存储引用类型,不存储基本数据类型。3、变量名.方法add(参数)向集合中添加元素,数据存储进去方法中的参数类型,定义集合对象时候的类型一致get(intindex)取出集合中的元素,get方法的参数,写入索引size()返回集合的长度,集合存储元素的个数add(int索引,存储的元素)将元素存储到指定的索引位置;set(int索引,修改后的元素)将指定索引元素进行修改;remove(int索引)删除指定索引上的元素;clear()清空集合中所有的元素Day06_15-16随机点名器案例Day06_17-20商品库存案例第七天Day07_1-2练习Day07_3编码表ASCII表48-57为0-965-90为A-Z97-122为a-z简体中文编码表GB2312升级为GBK国际iso,万国码UnicodeChar存储汉字,查询Unicode编码表第八天Day08_7Eclipse快捷键Alt+/自动补全Ctrl+shift+F代码格式化Ctrl+/单行注释、取消单行注释Ctrl+shift+/多行注释Ctrl+shift+\取消多行注释Ctrl+shift+o导入包的快捷键Alt+上下箭头移动当前行代码Ctrl+Alt++上下箭头复制粘贴当前代码行Ctrl+D删除当前行代码Ctrl+1意见提示功能Ctrl+2+R重新定义变量Ctrl+2+L接受返回值变量双击代码行,可以进入断电调试模式第九天Day09_9成员变量和局部变量的区别成员变量有默认值,局部变量没有默认值,不赋值不能使用成员变量跟随对象进入堆内存存储,局部变量跟随自己的方法进入栈内存。成员变量跟随对象,在堆内存,内存等待JVM清理,生命相对较长局部变量,跟随方法,方法出栈,生命相对短。Day09_13-15关键字private私有(权限修饰符),属于成员修饰符,不能修饰局部变量被private修饰的成员,只能在自己的本类中使用。对私有变量提供公共的访问方式:方法定义方法对age(成员变量)变量赋值,方法的名字,必须set开头定义方法,对变量age获取值使用,方法的名字get开头Day09_16this关键字区分成员变量和局部变量同名情况(加this.使之成为成员变量)。本类对象引用:哪个对象调用的,this就表示哪个对象第十天Day10_2-6关键词继承:extends单继承,不可以多继承,可以多层继承在子类中调用父类中的成员,关键字super.调用父类的成员(变量和方法)父类(超类,基类)子类(派生类)this.调用自己本类成员Super.调用自己父类的成员Day10_7重写子类的对象调用方法的时候:子类自己有,调用子类;子类没有,调用父类。方法的重写(覆盖):子类中,出现和父类一模一样的方法的时候,子类重写父类的方法。Day10_10子类重写方法保证子类的方法的权限大于或者等于父类的方法权限四大权限publicprotecteddefault(默认权限,不写关键词)private父类的私有方法(变量)子类不能继承Day10_12-14抽象类抽象方法方法没有主体的方法,必须使用关键字abstract修饰(因为抽象所以才出现重写,因为自己没有方法的主体)抽象的方法,必须存在于抽象的类中,类必须用abstract修饰抽象类不能实例化对象,不能new的抽象类的使用:定义类继承抽象类,将抽象方法进行重写,创建子类的对象子类继承抽象类,全部重写抽象方法,创建子类对象;如果子类继承了抽象类,重写了部分的抽象方法,这个子类还是抽象类。第十一天Day11_2-6接口interface的定义:成员方法:全抽象不能定义带有方法体的方法定义抽象方法:(固定格式)publicabstract返回值类型方法名字(参数列表);接口的方法修饰符写或者不写都是public(公共访问)publicabstract修饰符,写或者不写,也可以选择性书写重写接口中的抽象方法,public必须写。实现类,实现接口必须重写全部的抽象方法实现类重写了一部分抽象方法,实现类还是一个抽象类成员变量的定义:必须定义为常量固定格式:publicstaticfianal数据类型变量名=值;public权限static可以被类名(接口名)直接.调用final最终,固定住变量的值publicstaticfianal修饰符,在接口的定义中

1 / 157
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功