java学习笔记.docx

上传人:b****2 文档编号:2129796 上传时间:2022-10-27 格式:DOCX 页数:13 大小:24.25KB
下载 相关 举报
java学习笔记.docx_第1页
第1页 / 共13页
java学习笔记.docx_第2页
第2页 / 共13页
java学习笔记.docx_第3页
第3页 / 共13页
java学习笔记.docx_第4页
第4页 / 共13页
java学习笔记.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

java学习笔记.docx

《java学习笔记.docx》由会员分享,可在线阅读,更多相关《java学习笔记.docx(13页珍藏版)》请在冰豆网上搜索。

java学习笔记.docx

java学习笔记

Java发展到现在,安应用主要分为三大快

1、J2SE(Java2StandardEdition)

这是Java2的标准版,主要用于桌面应用软件的编程,和VC,VB,Dephi相比并没有什么优势

2、J2ME(Java2MicroEdition)

主要用于嵌入式系统开发,如手机和PDA的编程

3、J2EE(Java2PlatformEnterpriseEdition)

Java2的企业版,主要用于分布式的网络程序开发,如电子商务网站和ERP系统。

J2EE包含许多组件,比如Jsp、Servlet、JavaBean、EJB、JDBC等。

Java平台由两大部分组成:

Java虚拟机(JVMJavaVirtualMacthine)和Java应用编程程接口(JavaApplicationProgrammingInterface)API

JDK为JavaDevelopmentKit(Java开发工具包)的缩写,包括运行环境、编译工具及其它工具、源代码等;JRE为JavaRuntimeEnvironment(Java运行时环境)的缩写,即运行Java程序所必须的环境的集合。

Java语言程序有“一次编写,重复使用”的特点。

面向对象编程(OOP)将数据和方法封装在对象中;对象的数据与方法紧密联系在一起。

Java程序员创建它们自己的数据类型,称为类。

构造方法和类同名,在实例化该类对象时,它用于初始化该对象的实例变量。

构造方法可以有参数,但不能指定返回值类型。

在创建一个对象时,new运算符为该对象分配内存,然后调用类的构造方法以初始化该对象的成员变量。

如果没有构造方法,编译器会自动创建一个默认的构造方法。

代码书写规范

1、类(Class)采用完整的英文描述,所有单词的第一个字母大写如CustomerTest

2、变量名firstName、lastName。

3、静态常量字段(staticfinal)全部采用大写字母,单词之间用下划线分隔。

MIN_BALANCE

4、普通成员函数采用完整的英文描述说明函数的功能,第一个单词小写,如openFile()

5、如果是boolean型则可用is前缀如isString()

6、代码的书写格式也要注意规范

标识符命名规范

Java语言规定标识符由字母、下划线、美元符号和数字组成,并遵循如下规则:

1、区分大小写

2、不能以数字开头

3、以字母、下划线_或$开头

4、不能使用Java关键字开头

Java支持3种注释

1、//单行注释

2、/**/多行注释

3、/***/文档注释

Java的基本数据类型

@逻辑类型:

boolean

@字符类型:

char

@整数类型:

byte、shot、int、long

@浮点类型:

double、float

类型转换:

1)把低精度转换为高精度时,系统会自动完成类型转换

2)把高精度转换为低精度时,需要强制类型转换

&&短路与(逻辑与)x&&y当x,y都真时表达式x&&y才为真

||短路或(逻辑或)x||y当x,y有一个为真时表达式x||y就为真

&按位与是双目运算。

其功能是参与运算的两数各对应的二进位相与。

只有对应的两个二进位均为1时,结果才为1,否则为0.参与运算的数以补码方式出现。

例如:

9&5可以写成如下算式:

00001001(9的二进制补码)&00000101(5的二进制补码)=00000001(1的二进制补码)所以9&5=1

|按位或是双目运算。

其功能是参与运算的两个数对应的二进位相或。

只要对应的两个二进位有一个为1时,结果为1.参与运算的两个数均以补码出现。

例如:

9|5

00001001|00000101=00001101=13

static关键字

类中有static修饰的变量和方法叫做类的静态变量、静态方法

类的静态成员和方法不依赖类的实例,在不创建类对象的情况下就可以直接通过类名来访问,并且这些静态成员被类的所有实例共享。

多态:

方法重载

面向对象编程具有多态特征,简单的讲就是对外只有一个接口,但内部有多种实现。

方法重载就是

方法名相同,包括大小写。

方法的参数列表必须不同,就是说参数的类型,个数,顺序至少有一个不同。

编译器将参数列表的不同作为重载的判定依据。

方法的返回值类型和修饰符不能作为重载的判定依据。

构造方法也可以重载。

继承:

extends

继承是实现代码重用的一种有力手段。

如果有多个类具有一些相同的属性和方法,可以将这些相同的属性和方法抽象出来定义为一个父类,在父类中定义这些属性和方法,则具有这些属性和方法的其他类可以从这个父类派生出来,不必再重新定义这些属性和方法,我们称这些派生出来的类为子类。

子类将继承父类中所有的非private修饰的成员变量和成员方法。

private是访问控制符,被private修饰的变量和方法都只能在本类中访问。

用final修饰的变量不能被修改,用final修饰的类不能被继承。

抽象类与接口

用abstract修饰的类为抽象类。

抽象类不能被实例化

用abstract修饰的方法为抽象方法,抽象方法没有方法体,只描述功能,不提供实现。

publicabstractclassAbstractClass{

publicabstractvoidmethod();//抽象方法是没有方法体的

publicvoidmethod2(){}//具体方法必须有方法体,即使方法体为空

}

接口

接口interface比抽象类更抽象,接口中只声明方法,但不定义方法,不包含具体的方法。

接口只声明能做什么,不规定怎么做,怎么做由实现接口的类去确定。

可以认为接口就是一个行为的协议或规范。

publicinterfaceComputer{

publicstaticfinaldoublePI=3.14;

publicabstractdoublesum(doublex,doubley);

publicdoublesub(doublex,doubley);

//即使缺省abstract,系统会自动添加

}

用new创建对象,开辟对象的存储空间。

Java提供的垃圾回收机制能够自动清理无用的对象

如果类中没有定义构造方法,编译器会自动添加一个默认构造方法

若对象作为方法参数,则实参传给形参的是对象的应用,使得形参和实参指向同一个对象,对形参的修改会影响到实参

若局部变量和成员变量同名,则局部变量会屏蔽成员变量,可以用this来引用成员变量

类的静态成员有static修饰,随类加载,不依赖于类的实例。

类中可以定义多个方法名相同但参数列表不同的方法,称为方法重载。

方法重载是多态的一种体现。

继承机制允许从现有的类中派生子类,java是单继承,所有类都是直接或间接从java.lang.Object派生来

可以使用final关键字修饰变量,类和方法。

接口定义一些行为规范,实现接口的类具有这些行为规范,接口可以多继承,

Java提供了4种访问控制符:

private、default、protected、public

进制转换问题:

Integer类的toString()方法,可以将integer对象转换成十进制对象

toBinaryString()可以转换为二进制

toHexString()可以转换为十六进制

toOctalString()可以转换为八进制

例如:

StringstrHex=Integer.toHexString(20);//将十进制的20转换为十六进制

StringstrBina=Integer.toBinaryString(20);//将十进制的20转换为二进制

StringstrOct=Integer.toOcatlString(20);//将十进制的20转换为八进制

Integer类的toString()方法

Stringstr=Integer.toString(0345,2);//第一个参数为要转换的数字,第二个是转换成什么进制

intn=Integer.praseInt(“023”,8);//将八进制的023转换成八进制,输出结果只能计算对应的进制数

从控制台读取数据

charc=System.in.read();//按字节读取数据

BufferedReaderbf=newBufferedReader(newInputStreamReader(System.in));//从控制台高效的读取信息

Scannersc=newScanner(System.in);

Stringstr=sc.nextLine();

处理时间和日期

java.util.Date

Datedate=newDate();

System.out.println(date.getTime());//返回自1970-1-1以来的毫秒数

System.out.println(date);//输出当前时间

SimpleDateFormatf=newSimpleDateFormat(“yyyy-MMMM-dd-EEEE”);//设定日期输出格式

System.out.println(f.foramt(date));

SimpleDateFormatf=newSimpleDateFormat(“yy/MM/ddhh:

mm:

ss”);//另一种格式

System.out.println(f.format(date));

GregorianCalendargc=newGregorianCalendar();

Stringnow=gc.get(Calendar.YEAR)+"年"

+(gc.get(Calendar.MONTH)+1)+"月"

+gc.get(Calendar.DATE)+"日"

+gc.get(Calendar.HOUR)+"时"

+gc.get(Calendar.MINUTE)+"分"

+gc.get(Calendar.SECOND)+"秒";

System.out.println("当前时间是:

"+now);

 

ØMath类支持各种数学运算及其它的有关运算,Math类提供的方法都是静态的,通过类名就可以直接调用。

ØRandom提供了一系列用于产生随机数的方法。

ØDate、DateFormat和Calendar及GregorianCalendar提供了对日期和时间进行处理的方法

流的概念和基本操作

Java通过流来执行输入输出处理,流必须有源端和目的端,它可以是计算机内存的某些区域,也可以是磁盘文件,甚至可以是Internet上的某个Url。

根据流中的数据传输方向,可以将流分为输入流和输出流

根据管道中流动的数据类型,可以将流分为字节流(以字节为单位)和字符流(以字符为单位)

根据流的建立方式和工作原理:

节点流(直接建立在输入、输出媒体上)和过滤流(过滤流必须以某一个节点流作为流的来源,可以在读/写数据的同时对数据进行处理)

InputStream和OutputStream都是字节流还有其子类也是字节流

Reader和Writer都是字符流

InputStreamin=newInputStream(“d:

/hello.java”)

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 法律文书 > 起诉状

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1