Java基础知识培训

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

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

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

资源描述

Java基础知识培训于滨yubin35@chinaunicom.cn2011年07月目录第1章Java发展历史及现状第2章Java基本语法第3章面向对象3培训要点第一章Java的趣味发展史以及现状第二章publicclass和class的声明的区别Java的数据类型基本数据类型引用数据类型数据类型的默认值数据类型的转换循环控制fordo…whilewhileif…else数组4培训要点方法方法的格式方法重载构造函数函数重载的区分为什么不以返回值区分重载方法方法与数组第三章this表示“调用方法的那个对象”在构造器里调用构造器的限制不能在一个构造器调用两个构造器必须将构造器调用置于最起始处5培训要点开发的方式面向对象三个特征封装继承多态面向过程类的封装性类的图形表示构造方法匿名对象字符串Object的几个重要的方法Object.equalsObject.hashCodeObject.toString6培训要点static在static方法内部不能调用非静态方法finalize工作原理析构函数设计一个简单的问题,要求用户输入用户和口令,如果用户为xiaoX,口令为123,则向控制台打印登录成功,否则打印登录失败构造函数私有化代码块内部类函数回调继承final关键字抽象类接口7培训要点对象的多态性抽象类和接口的应用适配器模式简单工厂模式代理模式异常包持有对象字符串8Java发展史SUN:斯坦福大学网络1991年GREEN项目C++新的平台Oak网景公司1995年Oak命名为Java1998年Java2Java技术的主要分支J2SEJ2MEJ2EEJAVA62012年即将推出JAVA79Java发展史三者之间的关系10Java特点面向对象编译型语言编译型语言和解释型语言的区别:解释性语言在运行程序的时候才翻译,比如解释性basic语言,专门有一个解释器能够直接执行basic程序,每个语句都是执行的时候才翻译。这样解释性语言每执行一次就要翻译一次,效率比较低。Java虚拟机指针Java里不存在指针,因为java所有的对象,都是指针调用。低层以C++开发JVM保证了一次编译,处处运行(理论上)多厂家都有自己的jvmJava基础命令Java-versionJavacJdbjava-cp%MON_CP%%XM%com.sdunicomsi.monitor.agent.AgentSendInfo源文件与字节码12publicclass和class的确别建立一个文件名Person的类publicclassPersonDemo{}关键字、标识符、转义符在Java语言中,标识符是赋予变量、类和方法等的名称。标识符由编程者自己指定,但需要遵循一定的语法规范:(1)标识符由字母、数字、下划线(_)、美元符号($)组成,但美元符号用得较少。(2)标识符从一个字母、下划线或美元符号开始。(3)Java语言中,标识符大小写敏感,必须区别对待。(4)标识符没有最大长度的限制,但最好表达特定的意思。(5)标识符定义不能是关键字。转义符引用方法含义\b退格\t水平制表符Tab\n换行\f表格符\r回车\'单引号\双引号\\反斜线关键字又称保留字,是指Java语言中自带的用于标志数据类型名或者程序构造名等的标识符,如public、double等。转义符是指一些有特殊含义的、很难用一般方式表达的字符,如回车、换行等。所有的转义符以反斜线(\)开头,后面跟着一个字符来表示某个特定的转义符//i++和++i是有区别的,//i++是在一个先使用后加1,即先使用i的值,后让i+1//++i则是先加1后使用,即先让i+1后再使用i的新值classijiajia{publicstaticvoidmain(String[]args){System.out.println(HelloWorld!);inti=3;intcount=(i++)+(i++)+(i++);System.out.println(i);//i=6System.out.println(count);//count=12intj=3;count=(++j)+(++j)+(++j);//count=4+5+6System.out.println(j);//j=6System.out.println(count);//count=15}}16数据类型基本数据类型intcharbytelongfloatdouble引用数据类型New接口类对象数组String是不基本数据类型17数据类型的默认值基本数据类型都有自己的默认值privateintage;//默认值为018控制语句ifdo…..whilewhileforforeach(JDK1.5之后的新特性)19foreach示例publicclassForEach{publicstaticvoidmain(String[]args){String[]aa={小刚,小明,小敏,小红};//JDK1.4之前for(inti=0;iaa.length;i++){System.out.println(aa[i]+、);}//JDK1.5之后,包括JDK1.5foreach(Strings:aa){System.out.println(s+、);}}}20数组的声明int[]aa=newint[10];int[]aa=null;aa=newint[10];int[]aa={1,10,2};21方法public数据类型|void方法名(参数类表){}构造函数实际上就是一种重载函数重载的唯一标志就是参数列表22方法重载实例classNumber{publicvoidadd(intx){System.out.println(intx=+x);}publicintadd(intx){System.out.println(doublex=+x);Return1;}}publicclassMethodDemo{publicstaticvoidmain(String[]args){Numbernumber=newNumber();number.add(1);number.add(1f);}}23可变参数(新特性)publicclassMethod1{publicstaticvoidmain(Stringargs[]){inttemp[]={2,4,6,8};fun();//没有参数fun(1);//一个参数fun(1,3,5,7,9);//一个参数fun(temp);}publicstaticvoidfun(int...arg){for(intx:arg){System.out.print(x+、);}System.out.println();}}24为什么不一返回值确定一个方法publicclassMethodDemo1{publicvoidfun(){System.out.println(HelloUnion!!);}publicStringfun(){System.out.println(HelloUnion!!);}publicstaticvoidmain(String[]args){fun();}}25方法与数组publicclassMethodArray{publicstaticvoidmain(Stringargs[]){inttemp[]={1,3,5,7,9};//声明数组fun(temp);print(temp);}publicstaticvoidfun(int[]x){x[0]=6;//修改第一个元素}publicstaticvoidprint(int[]x){for(inti=0;ix.length;i++){System.out.print(x[i]+、);}}}26this关键字调用类的属性this.属性调用类的方法this.方法调用类的构造方法this()表示当前对象this27this关键字classPerson{Stringname;publicStringgetName(){returnname;}publicvoidsetName(Stringname){name=name;}}28this关键字publicclassBook{publicBook(){System.out.println(book);}publicBook(intx){System.out.println(book);System.out.println(book+x);}publicBook(intx,inty){System.out.println(book);System.out.println(book+x);System.out.println(book+y);}}29this关键字publicclassBook{publicBook(){System.out.println(book);}publicBook(intx){this();System.out.println(book+x);}publicBook(intx,inty){this(x);System.out.println(book+y);}}Super关键字调用父类的属性super.属性调用父类的方法super.方法调用父类的构造方法super()在构造函数内,super()必须放在第一行31开发方式面向过程主要是解决问题,有点记叙文的味道面向对象是一套系统的开发的模式,更能贴近现实事物一种思路32开发方式面向过程主要是解决问题,有点记叙文的味道面向对象是一套系统的开发的模式,更能贴近现实事物一种思路,特征抽象封装性继承性多态性33类和对象34类和对象类的组成访问类的属性和方法35类的封装性classPerson{Stringname;intage;}publicclassClient{Personper=newPerson();per.name=“小明”;per.age=-10;}加入private36类的图形表示37构造方法与匿名对象构造方法必须与类名相同构造方法没有返回值可以有多构造方法每个必须有构造方法classPerson{}通俗的说只使用一次的对象称为匿名对象38字符串拆分publicclassStringDemo{publicstaticvoidmain(String[]args){Strings=asd,333,2222,000,1111;String[]s_a=s.split(,);for(Strings1:s_a){System.out.print(s1+、);}System.out.print(\n);Stringss=asd|333|fff|sss|asdfsad;这个字符串怎么根据”|”拆分为字符串数组??}}39Object.equalsclassPerson{intage;}publicclassClient{Personper1=newPerson();Personper2=per1;Per2.age=1;System.out.println(per1.equals(per2));}40Object.equalsclassPersion{privateintage;publicintgetAge(){returnage;}publicvoidsetAge(intage){this.age=age;}@Overridepublicbooleanequals(Objectobj){if(this==obj){returntrue;}if(objinstanceofPersion){if(this.age==((Persion)obj).getAge()){returnt

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

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

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

×
保存成功