![点击分享此内容可以赚币 分享](/master/images/share_but.png)
Java学习重点笔记.pdf
《Java学习重点笔记.pdf》由会员分享,可在线阅读,更多相关《Java学习重点笔记.pdf(54页珍藏版)》请在咨信网上搜索。
1、一、常用的DOS命令dir(directory):列出当前目录下的文件以及文件夹md(make directory):仓建目录rd(remove directory):删除目录cd(change directory):进入指定目录cd.:退回到上一级目录cd:退回到根目录exit:退出dos命令行二、第一个程序什么是JDKJRE下载及安装jdk步骤:1).将Java代码编写到扩展名为Java得文件中:.需要确保原文件是.JAVA为扩展名.代码:class HelloWorldpublic static void main(String args)System.out.println(/Hell
2、o world);2).通过javac编译.需要设置环境变量.Javac HelloWorld.java3).通过 java 命令运行 class 文件:jjava HelloWorld三、注释单行注释格式:注释文字多行注释格式:/*注释文字*/文档注释四、数据类型数值型一整数类型(byte,short,int,long)数据类型基本 数据类型,浮点类型(float,double)字符型(char)引用布尔型(boolean)类(class)f-F字符串在这里数据类型 n 接口(interface)L数组()Java的整型常量默认为int型,声明long型常量须后加 T 或L int i=13
3、;long count=14L;Java的浮点型默认为double型,声明float常量须后加甲或F double st=12.23;float ss=12.32F;boolean类型数据只允许取值true和false,不可以。或非0的整数替代true和false boolean flag=true;自动的类型转换float f2=12;强制类型转换int i2=(int)12.32;有多种类型的数据混合运算时,系统首先自动将所有数据转换成容量最大的那种数据类型,然后再进行计算long result=12+12L;byte,short,char之间不会相互转换,他们三者在计算时首先转换为int
4、类型 byte bl=12;byte b2=13;int b3=bl+b2;而不是 byte b3字符串不能直接转换为基本类型boolean类型不可以转换为其它的数据类型类型占用存储空间表数范围byte1字书-128 127short2字书-215 215.1int4字书,231 231-1long8字书-263 263.1五、运算符1)如果对负数取模,可以把模数负号忽略不记,如:5%-2=lo但被模数是负数就不能忽略 符号;2)对于除号“/,它的整数除和小数除是有区别的:整数之间做除法时,只保留整数部分 而舍弃小数部分;3)“+”除字符串相加功能外,还能把非字符串转换成 字符串.例如:Sys
5、tem,out.printin(5+5=+5+5);4)赋值运算符(=):将等号右边表达式的结果赋值给等号左边的变量;5)算术运算符(+-*/%+):i+;等同于i=i+1;i+;i类型占用存储空间表数范围单精度float4字节-3.403E38-3.403E38双精度double8字节-1.798E308-1.798E308符符 算算-1运运.一,系辑+1关逻+6)7)!=):主要用于进行比较运算,返回结果为布尔型“+”除字符串相加功能外,还能把非字符串转换成 字符串.例如:System.out.println(5+5=+5+5);打印结果是 5+5=55;扩展赋值运算符:+=,-=,*=,
6、/=,%=z+=100;即 z=z+100;位运算是直接对二进制进行运算“&”和“&”的区另小单&时,左边无论真假,右边都进行运算;双&时,如果左边为真,右边参与运算,如果左边为假,那么右边不参与运算。和“|”的区别同理,双或时,左边为真,右边不参与运算。异或(”与或(I)的不同之处是:对于人而言,当左右都为true时一,结果为false。8)三元运算符格式:(条件表达式)?表达式1:表达式2;如果条件为true,运算后的结果是表达式1;如果条件为false,运算后的结果是表达式2;六、规则1、若一个java文件中有public声明的类,则java文件的文件名必须和类名一致。2、在一个java
7、文件中可以声明多个类,但只能有一个public类型的类。七、IFpublic class TestAgepublic static void main(String args)TestAge t=new TestAge();t.age(75);public void agefint age)if(age250)System.out.printing 是个妖怪!);else System.out.printin(此人芳龄+age+马马乎乎啦!)八、SWITCHpublic class Testpublic static void main(String args)int i=1;switch(i
8、)case 0:System.out.println(zero);break;case 1:System.out.println(one);/break;default:System.out.println(default);break;)七、循环1、循环语句分类for循环while循环do/while 循环2、for循环public class ForLoop public static void main(String args)int result=0;for(int i=l;i=100;i+)result+=i;)System.out.println(result=+result);)
9、3、while 循环public class WhileLoop public static void main(String args)int result=0;int i=l;while(i=100)result+=i;i+;)System.out.println(result=+result);)4、do/while 循环public class WhileLoop public static void main(String args)int result=0,i=l;doresult+=i;i+;while(i=100);System.out.println(result=+resu
10、lt);八、break、cont i nue1、break只能用于switch语句和循环语句中。continue只能用于循环语句中。2、Break 示例public class TestBreakpublic static void main(String args)for(int i=0;i10;i+)if(i=3)break;System.out.println(i=+i);System.out.println(Game Over!);3、Continue 示例public class ContinueTest public static void main(String args)for
11、(int i=0;i default、private修饰符同一个类同一个包子类整体privateYesdefaultYesYesprotectedYesYesYespublicYesYesYesYes2、方法覆盖 在子类中可以根据需要对从父类中继承来的方法进行改造一覆盖方法(方法的重置、重 写),在程序执行时,子类的方法将覆盖父类的方法。覆盖方法必须和被覆盖方法具有相同的方法名称、参数列表和返回值类型。覆盖方法不能使用比被覆盖方法更严格的访问权限。3、在Java类中使用super来引用父类的成分 super可用于访问父类中定义的属性public String getlnfo()return s
12、uper.getlnfo()+w,school:w+school;)super可用于调用父类中定义的成员方法 super可用于在子类构造方法中调用父类的构造方法 super的追溯不仅限于直接父类 子类继承父类所有的成员变量和成员方法,但不继承父类的构造方法(构造器不能被继 承)5、调用父类构造方法 在子类的构造方法中可使用super(参数列表)语句调用父类的构造方法 如果子类的构造方法中没有显示地调用父类构造方法,也没有使用this关键字调用重载 的其它构造方法,则系统默认调用父类无参数的构造方法 如果子类构造方法中既未显式调用父类构造方法,而父类中又没有无参的构造方法,则编译出错十六、多态
13、多态一在Java中,子类的对象可以替代父类的对象使用 一个变量只能有一种确定的数据类型 一个引用类型变量可能指向(引用)多种不同类型的对象Person p=new Student();Object o=new Person();/Object类型的变量o,指向Person类型的对象=new Student。;“Object类型的变量o,指向Student类型的对象 父类类型的变量可以指向子类的对象 一个引用类型变量如果声明为父类的类型,但实际引用的是子类对象,那么该变量就 不能再访问子类中添加的属性和方法Student m=new Student();m.school=pku”;合法,Stud
14、ent 类有 school 成员变量Person e=new Student();e.school=pku;非法,Person 类没有 school 成员变量属性是在编译时确定的,编译时e为Person类型,没有school成员变量,因而编译错误。1、在多态情况下,可以对对象强制的类型转换Person p2=new Man();P2.walk();Man man=(man)p2;Man.work();以下转换会发生运行异常Woman woman=(Woman)p2;Woman.shopping();2、只有在父子关系的情况下,才能进行强制的类型转换3、父类的对象可以转为任何子类的类型,但有可能
15、发生java.Iang.ClassCastException4、对Java对象的强制类型转换成为造型 从子类到父类的类型转换可以自动进行 从父类到子类的类型转换必须通过造型(强制类型转换)实现 无继承关系的引用类型间的转换时非法的 在造型前可以使用instanceof操作符测试一个对象的类型(x instanceof A:检验x是 否为A的对象,返回值为布尔类型)十七、object类1、Object类是所有Java类的根父类如果在类的声明中未使用extends关键字指明其父类,则默认父类为Object类public class Person 等价于:public class Person ex
16、tends Object 2、equals。方法是Object类的方法,用于判断两个对象是否指向同一个内存空间。由于所有 类都继承Object类,也就继承了 equal)方法。只能比较引用类型,其作用与“=”相同,比较是否指向同一个对象。格式:objl.equals(ob 3、特例:当用equals。方法进行比较时,对类File、String、Date及封装类(Wrapper Class)来说,是比较类型及内容而不考虑引用的是否是同一个对象;4、=操作符与equals方法的区别:=:引用类型比较引用(是否指向同一个对象);Person pl=new Person();Person p2=new
17、 Person();if(pl=p2).基本类型比较值;int a=5;if(a=6)用=进行比较时,符号两边的数据类型必须一致(可自动转换的基本数据类型除外),否则编译出错;3、toString 方法 toString。方法在Object类中定义,其返回值是String类型,返回类名和它的引用地址。在进行String与其它类型数据的连接操作时,自动调用toString()方法 Date now=new Date();System.out.println(/now=w+now);相当于 System.out.println(now=v+now.toString();/now=Date 1223
18、45 可以根据需要在用户自定义类型中重写toString。方法 如String类重写了 toString()方法,返回字符串的值。sl=hello;System.out.println(sl);/目当于 System.out.println(sl.toStringO);在ToStringl.java中的类A里覆盖toString方法,使其输出类A对象的cint属性值。基本类型数据转换为String类型时,调用了对应封装类的toString。方法int a=10;System.out.println(a=+a);5、虚拟方法调用(多态情况下)Person e=new Student();e.ge
19、tlnfo();调用 Student 类的 getlnfo()方法编译时类型和运行时类型编译时e为Person类型,而方法的调用是在运行时确定的,所以调用的是Student类的 getlnfo。方法。动态绑定十八、封装类1、基本数据类型封装类booleanBooleanbyteByteshortShortintIntegerlongLongcharCharacterfloatFloatdoubleDouble2、封装类就是基本数据类型对应的引用类型十九、关键字static1、static标记的变量或方法由整个类(所有实例)共享,如访问控制权限允许,可不必创建该 类对象而直接用类名加调用。2、类
20、变量(类属性)由该类的所有实例共享,类属性类似于全局变量3、不用创建对象就可以访问静态成员,访问方式:类名.类属性类名.类方法4、没有对象的实例时一,可以用类名方法名()的形式访问由static标记的类方法5、在static方法内部只能访问类的static属性,不能访问类的非static属性。6、因为不需要实例就可以访问static方法,因此static方法内部不能有this,(也不能有 super?)7、在静态方法里只能直接调用同类中其它的静态成员(包括变量和方法),而不能直接访 问类中的非静态成员。这是因为,对于非静态的方法和变量,需要先创建类的实例对象后才 可使用,而静态方法在使用前不用
21、创建任何对象。8、静态方法不能以任何方式引用this和super关键字。与上面的道理一样,因为静态方 法在使用前不用创建任何实例对象,当静态方法被调用时,this所引用的对象根本就没有产 生。9、main()方法是静态的,因此JVM在执行main方法时不创建main方法所在的类的实例 对象,因而在main。方法中,我们不能直接访问该类中的非静态成员,必须创建该类的一个 实例对象后,才能通过这个对象去访问类中的非静态成员,这种情况,我们在以后的例子中 会多次碰到。二十、类属性、类方法的设计思想1、类属性作为该类各个对象之间共享的变量。在设计类时,分析哪些类属性不因对象的不同 而改变,将这些属性设
22、置为类属性。相应的方法设置为类方法。2、如果方法与调用者无关,则这样的方法通常被声明为类方法,由于不需要创建对象就可 以调用类方法,从而简化了方法的调用3、静态初始化:一个类中可以使用不包含在任何方法体中的静态代码块(static block),当 类被载入时,静态代码块被执行,且只被执行一次,静态块经常用来进行类属性的初始化。static块通常用于初始化static(类)属性class Person public static int total;static total=100;为 total 赋初值其它属性或方法声明4、设计模式是在大量的实践中总结和理论化之后优选的代码结构、编程风格、以
23、及解决问题的思考方式。5、所谓类的单态设计模式,就是采取一定的方法保证在整个的软件系统中,对 某个类只能存在一个对象实例,并且该类只提供一个取得其对象实例的方法。public class Single/l.在类的外郃不能通过new构造25的方式创建实例./杷构后器悬减配来,即构患器乂有化private Single()/2.因为在类的外方不能创业类的实例,只能在类的内净创戏./3.为让类的外部可以直接使用该实例,使用static修饰.1/4.不能在臭的外部可以修改该国性:私有化该属性,日时提供公有的get方法/来访问private static Single instance=new Sing
24、le();public static Single getlnstance()return instance;public class TestSingle(public static void main(String args)/Single singlel=new Single();/Single single2=new Single();Single instancel=Single.getInstance;Single instance2=Single.getlnstance();System.out.println(instancel=instance2);Single.getIns
25、tance()null)Single instance3Singleinstance!二H-、final 关键字1、在Java中声明类、属性和方法时,可使用关键字final来修饰。2、final标记的变量(成员变量或局部变量)即成为常量,只能赋值一次。必须在声明时被初始化,或在非静态代码块中(或构造器中)初始化。3、final标记的类不能被继承。提高安全性,提高程序的可读性。4、final标记的方法不能被子类重写。增加安全性。5、final标记的成员变量必须在声明的同时或在每个构造方法中显式赋值,然后才能使用。二十二、抽象类1、有时将一个父类设计得非常抽象,以至于它没有具体的实例,这样的类叫做
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java 学习 重点 笔记
![提示](https://www.zixin.com.cn/images/bang_tan.gif)
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【曲****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【曲****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。