当前位置:文档之家› Java语言基础

Java语言基础

Java语言基础
Java语言基础

Java基础

一.Java平台概述

1.Java特点

A.简单:语言本身既容易学,又容易使用,而且功能强大。

B.面向对象:Java是“纯”面向对象的语言。其特征是:没有全局变量和全局函数那样

的概念。面向对象的编程更符合人们的思维方式。

C.与平台无关:这是Java的最大优势,即所谓的‖ Write Once , Run Anywhere‖,这个

特点也称为“可移植性(universality)”。

D.解释型:源代码编译之后生成“字节码”文件,然后由JVM解释执行

E.多线程:内置多线程支持

F.垃圾回收机制(garbage collection): 用以自动回收内存垃圾。

G.安全性(security): Java特有的沙箱(Sandbox)机制保证了这种网络语言的安全性。同时它

删除了C++语言中复杂而且容易造成错误的指针,它的Java Applet在客户端运行时也受到限制,从而保证了程序运行的安全性。

H.效率稍低。健壮性、安全性、平台无关性、可移植性等方面的提高总是要以牺牲性能为代价的,Java程序的解释执行的效率也要低于直接执行编译后的源码的效率。可谓“鱼与熊掌不可兼得”,但是Java采用了一些很好的措施来弥补这些性能上的差距

2. Java的三种平台

Java平台主要由java虚拟机(JVM,java virtual machine)和应用程序接口(java api,javaapplication program interface)组成.JVM实际上是运行在操作系统上的一种

程序,其主要作用是对java字节码进行解释并执行。目前有三个版本:

Java2 微型版(Java2 Micro Edition,简称JavaME)

Java2 平台标准版(Java 2 Standard Edition,简称JavaSE)

Java2 平台企业版(Java 2 Enterprise Edition,简称JavaEE).

3. JDK

JDK,即Java Develop Kit,它是Java的基础。Java程序编译,运行依赖于它。

JDK版本:JDK V1.2 JDK V1.3 JDK V1.4JDK V1.5,JDK V6.0

4. Java应用程序常用开发工具

Borland Jbuilder2006 ,

IBM Eclipse,

Sun NetBeans

二.Java数据类型

A. char类型采用Unicode编码。一个汉字仍为一个字符。Char实际上也是整型量,Unicode表中的字符就是一个字符常量,必须用单引号括起,例如:‘B‘?大‘,‘7‘等

B.要获得一个字符在Unicode字符集中的编码,必须用强制类型转换。例如:

(int)‘Y‘如果要获得一个0-65535中的数所表示的Unicode表中相应位置的字符,必须使用char进行转换。例如:(char)20320

2.对象类型

有多种形式,如String 型对象,用于表示字符串,它是一个与字符串有关的类

String s1=‖你好‖;

String s2=new String(―Hello!‖);

3. 类型转换:

3.1.隐式类型转换

byte-→short-->int-→long-→float-→double

char-->int-→long-→float-→double

3.2.强制类型转换

int k=(int)3.7; //舍去小数

int m=(int)Math.sqrt(2*365.0); //舍去小数

3.3.String 类型对象与基本数据类型间的运算

String 对象可以进行―+‖ (字符串拼接运算),其结果仍然为String,,即

字符串+ 整数(实数) =字符串

例如:

int b=256;

System.out.println(―b之值为:‖+b+‖。‖);

输出结果为:b之值为:256。

三.字面量和变量

(一)。字面量

1.整数字面量

任何整数值都是一个整数字面量。常用表示方法:

十进制表示法(默认)(基为0--9) 1,56,92

八进制表示法(基为0--7),用前导0 表示:0712,05,013

十六进制表示法(基为0—9 A-F) 用前导0X 表示:0x12 0x FB,0X FF 2.浮点数字面量

表示有小数的十进制数。可以用标准计数法或科学计数法表示。Java中的浮点型

字面量默认是double,要指定一个float类型,必须在字面量之后增加后缀F(或f),当然,double 字面量也可以显式增加后缀D(或d)

3.字符字面量

java字符字面量编码为unicode.,是16位的值,可以转换为整数并可以用整数运

算符,如+ - 运算符。字符字面量一般用单引号括起来,如?A‘?大‘.其它表示法

(二)。变量

变量是基本的存储单元,由一个标识符,一个类型和一个可选的初始值组合而成。

1.变量标识符的组成:

变量标识符由字母,数字,下划线,$ 组成,但不能以数字开头,并且不能与java保留字相同。如:MyClass My2,_width

2.变量的声明:

type<变量名> 如:int a;

3.变量初始化

<变量名>=<初始值> 如:int B=154 String myName=‖Jon‖

4.变量作用域

java变量主要有三种作用域:类作用域,方法作用域和块作用域,

类作用域变量在整个类的所有方法中均可使用;

方法作用域变量仅在本方法中可用。

块作用域,其标志为‖{ }‖, 仅在本块中可用。

四.运算符和表达式:

1.运算符

说明:

A. >> (右移) 运算符运算法则:当被移动的数为正数,则左边填0,否则,左边填1

左移‖<<‖相当于*2, 右移‖>>>‖相当于/2.

B. 运算符instanceof用于判断某个对象是否为某个类的实例,返回值为boolean。例如

String s;

Boolean b;

则s instanceof Boolean 返回false

s instanceof Strng 返回true

C. 短路逻辑运算符(&&(与) || (或) !(非))

按照优先级计算,当计算到能够确定该逻辑表达式的值时,停止后面的运算。例如:

A>=100 && B<999 如果给定A=25,则A>=100 为假,无论B 的值为何值,此时整个逻辑表达式的值都为假。因此,B<999 不再计算了。

D. 位运算是按二进制逐位进行的,可以用来提供速度。如:检查某数是否为奇数,

Int n;

String yesNo=(n & 1)!=0 ? ?是‘ : ?否‘;

E. 异或运算常用于加解密。

F. 注意++ -- 运算符它们。在变量之前和之后效果是不一样的。

int i=5;

myArray[--I %=10]=10; // 10 赋值给数组myArray哪一个元素呢?5,4,

2.运算符优先级:

说明:使用园括弧可以强制改变优先级

3.表达式

由运算符将变量(包括字面量)连接而成的有意义的式子称为表达式。如:

A+5; 32*6+(34+7); B , A>=100 && B<999

五.程序控制语句

编程语言使用控制语句来产生执行流,从而完成程序状态的改变。Java控制语句包含选择,迭代,跳转。

1.选择语句:

1.1.if 语句

if(<条件>) <语句>

[else <语句>]

说明:

A.<语句> 可以是单条语句,也可以是多条语句,但必须用大括弧括起来。

B. if 语句可以嵌套,即if 语句体包含if 语句

if(a<0) b=12; //没有else 语句!

if(a<0)

b=12;

else

{

x=x+5;

y*=65+7;

}

//嵌套if语句

if(I==100){

if(j<20) a=b;

if(k>100) c=d;

else a=c;

}

else

a=d;

1.2.switch语句

switch(<整型表达式>){

case value1:

<语句序列1>

case value2:

<语句序列2>

。。。

default:

<缺省语句序列>

}

说明:

1.<整型表达式> 可以是:byte ,short,int 或char类型或枚举类型

2.当表达式与某个case 匹配时,则执行该case 语句序列,只有所有的case 都不匹配时,才执行default语句序列;如果没有任何匹配的case,

同时又没有default语句,则什么也不做。

3.在switch语句中可以使用break语句跳出switch体。

4.Switch语句只能测试相等的情况,if语句可以测试表达式的任何情况5.通常在多分支的情况下使用switch语句。

for(int I=0;I<12;I++){

Switch(I){

Case 0:

Case 1:

Case 2:

Case 3:

Case 4:

System.out.println(―小于5 的整数‖);

Break;

Case 5:

Case 6:

Case 7:

Case 8:

Case 9:

System.out.println(―大于5 并且小于10的整数‖);

Break;

Default:

System.out.println(―大于等于10的整数‖);

}//end switch

}//end for

2.迭代语句

又称循环语句。包含下列几种:

while 循环

do while循环

for 循环

2.1. while 循环

while(<布尔表达式>) 语句;

说明:

2.1.1.<布尔表达式> 必须为boolean

2.1.2.语句如果为多条,则必须用大括弧括起来。

2.1.

3. 语句可以为空。

例如:

int iSum=0;

int I=10;

while(I>0){

iSum+=I;

i--;

}

int I=10,j=25;

while(++I>--j);

System.out.println(―I==‖+i);

2.2.do while循环

do{

//语句

}while(<布尔表达式>)

这个循环至少要执行一次,一般用于命令选择。

Int n=10;

do{

System.out.println(―Tick ―+n);

}while(--n>0)

2.3.for 循环

for(<初始化>;<条件>;<迭代>){

//body;

}

说明:

A.如果只有一条语句,则大括弧可以省略。

B.在<初始化>部分可以声明变量,变量作用域仅在for内

C.在<初始化>部分和<迭代>部分可以包含一条以上的语句,用‖,‖分隔., 变量作用

域仅在for内。

D.<初始化>,<条件>,<迭代>部分均可省略,这样可构成无限循环。

例如:

int num;

boolean isPrime=true;

for(int I=2;I<=num/2;I++){

if(num % I==0){

isPrime=false;

break;

}

}

if(isPrime==true)

System.out.println(―Prime‖);

Else

System.out.println(―Not Prime!‖);

3. for循环的for_each版本

for(type <变量>: <集合变量>)

语句块;

说明:

1.用于对集合进行遍历。

2.Type 必须与<集合变量>中的元素类型相同。

3.用于只向前的迭代。

4.不能改变<集合变量>中元素的值。

5.可以用于多维数组上的迭代

例如:

int[] num={1,2,3,4,5,9,7};

int iSum=0;

for(int x:num){

if(x % 2==0)

iSum+=x;

}

int sum=0;

int nums[][] =new int[5][3];//二维数组

for(int I=0;I<3;I++)

for(int j=0;j<5;j++)

nums[I][j]=(I+1)*(j+1);

for(int x[]:nums){

for(int y:x){

sum+=y;

}

}

System.out.println(―Summation:‖+sum);

//数组查找

4.跳转语句:

java支持三种跳转语句:break continue return,这些语句把控制转移到程序的另一部分。

4.1. break 语句

有三种用途。终止switch语句中的语句序列,可以用于退出循环;可用于goto 语句的一种替代形式。

4.1.1.形式1:

break 用于跳出当前循环(跳出一层).

4.1.2.形式2:

break <标签> 用于跳转到<标签> 处。

<标签> 是一个带有冒号(:)后缀的标识符。且<标签>标识一块语句(用大括弧括起来),

最重要的作用是从最内层循环退出

Boolean t=true;

First:

{

second:

{

third:

{

System.out.println(―Before the break.‖);

If(t) break second;

System.out.println(―this won‘t execute.‖);

}

System.out.println(―Before the break.‖);

}

System.out.println(―This is after second block..‖);

}

//从最内层循环跳到最外层循环

outer: for(int I=0;I<3;I++){

System.out.println(―Pass ―+I+‖:‖);

For(j=0;j<100;j++){

If(j==0) break outer;

System.out.println(j+― .‖);

}

System.out.println(―This will not print.‖);

}

System.out.println(―Loops complete.‖);

4.2.continue语句

4.2.1.形式1

continue 忽略该语句后面的所有语句,回到循环迭代处。

4.2.1.形式2

continue <标签> 用于跳转到<标签> 所在的那个循环语句的迭代处。

例如:输出乘法9*9表

outer:

{

for(int I=0;I<10;I++){

for(int j=0;j<10;j++){

if(j>I){

System.out.println();//空行

Continue outer;

}//end if

System.out.println(――+(I*j));

}//end for(j)

}//end for(i)

System.out.println();

}

0 1

0 2 4

0 3 6 9

0 9 18 27 36 45 54 63 72 81

private void Continue2(){

outer:

for(int a=1;a<=3;a++){

for(int b=1;b<=2;b++){

if(a<=2)

continue outer;

System.out.println(a+" "+b);

}//end for(b)

System.out.println("你好"+a);

}//end for(a)

}

//输出:

3 1

3 2

你好 3

//求素数

public void OutputPrime(){

final int Upper2=10;

outer:for(int a=2;a<=Upper2;a++){

for(int b=2;b<=a-1;b++){

if(a % b==0)

continue outer; //a 不是素数,则转到outer,处理下一个整数}//end for(b)

System.out.print(a+" ");//输出素数a

}

}

//输出结果:3 5 7

//break <标签>

public void Break2(){

Random r=new Random();

int[][] a=new int[3][5];

//产生随机整数数组

for(int i=0;i<3;i++){

for(int j=0;j<5;j++)

a[i][j]=r.nextInt(20);

}

int i,j=-1;

int iSum=0;

outer:for(i=0;i<3;i++){

for(j=0;j<5;j++){

iSum+=a[i][j];

if(iSum>=50){

break outer;//直接跳到最外层循环

}

}//end for(j)

}//end for(i)

System.out.println(i+"--- "+j+" 和"+iSum);

}

4.3.return 语句

return [表达式] //从一个方法中返回(表达式的值)

return x+y*3; return (b==5); //返回布尔量

return //

练习:

0. 计算7+77+777+。。。的前10项之和。

1.编写一个程序,用以判断一个5位数n各位数字的奇偶性,并求出他们的和。

2.根据给出的三门课程的成绩,求出平均分,总分和评语(>70为优秀,其余为普通)

3. 假设数组A 中的数据已按由小到大的顺序存放,设计一程序把数组A中相同的数据删得

只剩一个,然后以每行4个数据的格式输出A数组.

4给定一个二维数组B,编程找出每行的最大值,最小值,并将其保存到对应的二维数组s中即第0行中的最大值,最小值放入s[0][0],s[0][1], 第1行中的最大值,最小值放

入s[1][0],s[1][1]….

3.根据下列数据特点,用函数为各元素赋值,生成一个字符型二维数组,然后输出数组各元素。

ABCDEFGHIJ

CDEFGHIJKL

EFGHIJKLMN

GHIJKLMNOP

IJKLMNOPQR

4.根据下列数据特点,用函数为各元素赋值,生成一个字符型二维数组,然后输出数组各元素。

1@2@3@4@5@

2@3@4@5@6@

3@4@5@6@7@

4@5@6@7@8@

5@6@7@8@9@

5. 创建一个整型数组f,它有25个元素,元素之间符合下列规律,然后输出它们

f[0]=1,f[1]=2

f[I]=f[I-2]+f[I-1] (I>=2)

6.根据上一题要求,编写一段程序输出f[n]的值(其中n 为任意数)。要求使用数组和不使用数组完成。

7. 编写程序实现下列目的:在一个9位整数n (123456789L)中,将其各位上的数都按素数、合数、其它归类,并用字符‘*‘表示各类数出现的频率。输出结果如下:

素数****

合数****

其它*

8. 编写程序输出1—100间的整数,并且满足条件:它是3的倍数,但不是5的倍数,也不是9的倍数。

9. 设计一个函数,输出下列结果

*****

****

***

**

*

10.输出100 以内的所有素数

11.一个数如果恰好等于它的因子之和,这个数称为‖完数‖, 编写程序求1---m之间的所有‖完数‖。

12.编写程序,输出满足1+2+3+…+n<=9999的最大正整数n.

13. 编写一个方法,输出11-1000 之间满足下列条件的数:该数及该数的平方,3次方均为回文数(用两种算法实现)。

14.设计一个方法,输入学生成绩,按下列条件输出等级。

90<成绩<100 优

80<成绩<90 良

0<成绩<80 中

0<成绩<60 差

15. 数组A中存放某地一段时间的大气污染指数,例如

int[] pollute={1,4,6,10,2,3,5,11,15,23,12} ,试设计一个方法,找出污染指数大于等于

8 且连续出现5天以上的最长的连续天数。

16. 用代码生成汉字字库(从‘一‘到?龟‘), 并将其写入文件中,每个汉字信息占一行(汉字编码,汉字),

17. 设计一个类,封装对Unicode子符集的操作。要求提供下列静态方法:

public static char getChar(int unicode) //输入字符编码unicode,返回对应的字符

public static int getUnicode(char newChar) //输入字符newChar,返回对应的编码

public static char[] getChineses(int count) //返回前count个的汉字字符(编码最小的汉字的unicode码‖一‖等于19968)。

六.数组

数组是一组相同类型的元素的集合,类型可以是基本数据类型或引用类型

数组在Java中是一个对象,不是基本数据类型。

数组可以是一维的也可以是多维的,其中二维数组每一行的元素可以相同也可以不相同。如果每一行的元素不相同,这样的数组又称为‖锯齿‖数组

1.声明:

1.1. 一维数组声明。

type[] <变量名>或type <变量名>[]

如:int[] B

Object[] obj; //对象数组。如:

class Student{} //声明类

Student stArray=new Student[40];

1.2. 二维数组声明

type[][]<变量名> 或type <变量名>[][]

如:double[][] X

2.实例化

2.1.一维数组实例化

<变量名>=new type[<长度>];

int[] x;

x=new int[20]; 或int[] y=new int[10];

2.2.二维数组实例化

可以将二维数组看成是一维数组的数组,即一维数组的每一个元素又是一个一维数组。

<变量名>=new type[<第一维长度>][];

double[][] d;

//实例化数组对象本身

d=new double[3][2] //3行2列

d=new double[3][]; //锯齿数组

d[0]=new double[5]; d[1]=new double[3]; d[2]=new double[15];

3.初始化

3.1. type[] x={<值列表>};

int[] a={1,5,3,9,200}; //a的长度由编译器根据初始值的个数确定

3.2.type[] y=new type[]{<值列表>};

double[] m=new double[]{32.0,45.1,60};

3.3.type[][] kk={{},{},{},…}

float[][] ff={{1,2,3},{,5,3,2},{0,1,8},{1,1,3}}//定义4*3的二维数组

3.4.锯齿数组

type[][] A=null;

A=new type[长度][];//确定行长度

A[0]=new type[长度]; //确定列长度

例如:

long[][] B;

B=new long[3][];//数组共有3行

B[0]=new long[2];//第0行有2个元素

B[1]=new long[4];//第1行有4个元素

B[2]=new long[7];//第2行有7个元素

4. 数组元素的访问

<数组名>[index ] 数组首元素的索引为0, 其后的元素的索引依次为1,2,3,…

例如:int[] m={2,190,5}

m[1] 读取索引为1的元素,

m[0]=100 将10 写入索引为0的元素,

5. 数组常用属性:

int length表示数组长度。

注意:数组一旦定义,其长度不能再改变!。例如

double[] a=new double[5], 如果访问a[5]=99 则是非法的!

说明:对于二维锯齿数组,可以使用length获得第index行的长度,从而可以动态访问它。例如:

long[][] B;

B=new long[3][];//数组共有3行

B[0]=new long[2];//第0行有2个元素

B[1]=new long[4];//第1行有4个元素

B[2]=new long[7];//第2行有7个元素

for(int row=0;row

for(int col=0;col

//访问元素

System.out.println(B[row][col]);

}

}

6.对象数组:

对象数组又称引用型数组,即引用的集合。

例1:

Strng[] S; //声明数组引用变量

S=new String[3]; //创建具有三个元素的字符串数组,并将其赋值给引用变量S

数组中的每一个元素都是对字符串对象的一个引用。

S[0]=‖Java语言‖; S[1]=‖webspher‖; S[2]=‖C++程序设计‖

7.关于数组的一些说明:

7.1. 将赋值号‖=‖用于基本数据类型时,是将值赋值给变量,但它用于对象时,则是将

对象指定给引用名称来引用。可以将同一个对象指定给两个引用名称,当对象的值

由其中一个引用名称进行操作而变更时,另一个引用名称所引用到的值也会变动。

7.2. 对于对象数组,首先要为数组本身分配空间,然后再为每一个数组元素分配空间。

7.3. 数组元素的遍历可以使用for(Element : ArrayObject)进行快速访问。例如

int[] kk=new int[15];

for(int m: kk){

//处理元素m

}

String[] allName=new String[10] ;

AllName[0]=new String(―1111‖);

….

For(String name : allName){

//处理元素

}

double[][] dd=new double[5][6];

for(double[] rowArray :dd){

for(double ele : rowArray){

//处理数组元素

}

}

例2:

public class Man{

String name;

int age;

public static void main(Strng[] args){

Man[] manArray=new Man[2];//创建对象数组manArray(本身)

manArray[0]=new Man();//实例化数组元素0

manArray[0].name=‖江泽民‖;manArray[0].age=79;//为数组元素赋值

manArray[1]=new Man();//实例化数组元素1

manArray[1].name=‖太阳‖;manArray[1].age=23; //为数组元素赋值

for(int I=0;I

System.out.println(―name=‖+manArray[I].name+‖,‖+‖age=‖+manArray[I].age);

}

}

}

输出函数:

System.out.print(任意数据类型) //输出任意数据类型的数据

System.out.println(任意数据类型) //输出完任意数据类型的数据之后,再换行。

思考:

1.定义一个满足下列条件的类,并创建其对象,然后进行测试。此学生类拥有名字,学号,分数(为一个数组,表示5门课的成绩)属性,并且,此类接受分数输入的方法,计算并返回总分及

平均分数的方法。

5.用数组实现冒泡排序。

6.编写一个显示任意数组的方法(包括一维数组和二维数组)

7.给定一个数组,编程找出其中的最大值和最小值,并交换他们的位置。

8.设计一个方法,输入整数‖星期几‖,返回它的字符串表示。例如:

输入1,返回星期一(至少用两种方法实现)。

9.设计一个二维锯齿数组,用来表示杨辉三角形的前10行。

Java应用程序的创建、编译、运行

一.开发运行一个Java应用程序,需要具备的支撑软件

主要是安装J2SDK, 如果应用程序使用.Jar包文件,则需要安装第三方.Jar包文件。

1.安装 J2SDK

1.1.安装java2 SDK

首先安装java 程序开发工具java2 sdk (这是sun公司免费的),可从Sun公司的网站下载java 2 SDK V1.4 或V1.5版本,选取一个完整的压缩文件(包括)JVM虚拟机

1.2.下载完毕后,点击相应的.exe 文件,进行解压缩。

1.3.。以下按提示进行即可。

2.配置环境变量

2.1.设置环境变量JA V A_HOME=c:\JSDK1.5;

2.2.设置环境变量(类路径)CLASSPATH

CLASSPATH=.;%JA V A_HOME%\jre\lib;%JA V A_HOME%\lib\tools.jar

2.3.在环境变量PA TH最前面添加下列内容:%JA V A_HOME %\bin;

2.4.测试:

在命令行窗口键入java,如果出现帮助信息界面,则配制成功。

二.用Java开发Java应用程序的一般步骤

1.创建应用程序源文件

1.1.源文件编辑器:

可以使用任何文本编辑器:如记事本,EditPlus UltraEdit 等

1.2.源文件命名规则:

一个java源文件由若干个类组成,且只能有一个类是public类。

如果有一个public 类,那么源文件的名字必须与这类的名字完全相同,扩展名是

java.; 如果源文件没有public 类,那么源文件的名字只要和某个类的名字相同,扩展名是java就可以了。

2.编译Java 源文件

2.1. 设置环境变量path 使之包含%JA V A_HOME %\bin路径

2.2.切换到命令行方式:

进入java源文件所在的文件夹。Javac.java

3.运行java应用程序

3.1. 切换到命令行方式

3.2.进入.class文件所在的包文件夹的上一级文件夹。然后键入:

java[包名.]

4.运行java程序的其它方式

4.1.运行.class文件

java [options] class [args...]

例如:java myHello "大连" //带参数"大连" 运行myHello.class 程序

4.2.运行.jar文件

java -jar [options] jarFile [args...]

例如:java -jar myHello.jar //运行myHello.jar 程序

4.3.常用[options]说明:

4.3.1.指定类(.class)文件路径

-cp –classpath

4.3.2。设置java运行时堆大小

-Xms设置java最小堆尺寸.

-Xmx设置java最大堆尺寸

例如java -jar -Xms256m -Xmx1024m LoadData.jar

运行java程序LoadData.jar,并设置初始堆大小为512,最大堆大小为1024.

类型包装器—Wrapper Class

在Java中使用基本数据类型来保存语言支持的基本数据类型,是出于性能方面的考虑,因为,使用对象类型会引起系统较大的开销。类型包装器提供了将基本数据类型封装在一个对象内部的机制。类型包装器有:

Double,Float,Long,Integer,Short,Byte,Character,Boolean.

一.字符包装器--- Character

构造函数:Character(char c) //ch 用于指定要由创建的Character对象包装字符

操作函数:char char Value(); 获得包装器内的char 的值:

二.布尔量包装器--- Boolean

构造函数:

Boolean (boolean boolValue ) // boolValue 只能取true,false

Boolean (String boolString )

操作函数:boolean boolean Value(); 获得包装器内的boolean 的值

三.数字类型包装器

这是使用最多的包装器,它们是Byte,Short,Integer,Long,Float,Double,所有数字类型的

包装器都继承自Number抽象类。

1.构造函数:

Double(double d)

Float(float f)

Long(long l)

Integer(int I)

Short(short s)

Byte(byte b)

2.操作函数:

double doubleValue()

float floatValue()

long longValue()

int intValue()

short shortValue()

byte byteValue();

四.Integer类型包装器

1.构造函数:

Integer(int value)

Integer(String s) throws NumberFormatException //s 为非数字时,抛出异常2.方法:

byte byteValue()

short shortValue();

int intValue()

long longV alue();

//上述函数将当前类型转换为相应的类型

public static int parseInt(String s) throws NumberFormatException

将串s转换为10进值整数, s 为非数字时,抛出异常

public static int parseInt(String s,int radix) throws NumberFormatException 将字符串s 按指定的进制(解释) radix 转换为10 进制整数

s 为非数字时,抛出异常

public static String toBainaryString(int n)

将n 转换为二进值字符串

public static String toHexString(int n)

将n 转换为十六进值字符串

public static String toOctalString(int n)

将n 转换为八进值字符串

public static String toString(int n)

将n 转换为十进值字符串

Java基础入门教程(适合所有初学者)

第1章 Java语言概述与面向对象思想 1 1.1 Java语言的发展 1 1.1.1 Java语言的产生 1 1.1.2 Java语言的发展 1 1.2 Java语言的特点 2 1.3 面向对象与面向过程的差异 3 1.3.1 面向过程思想回顾 4 1.3.2 面向对象思想介绍 4 1.4 面向对象程序设计中的主要概念和特征 4 1.4.1 主要概念 5 1.4.2 主要特征 5 *1.5 Java与C++的差异 5 1.6本章小结5 习题 5 第2章 Java语言开发环境 6 2.1 JDK 6 2.1.1 JDK的简介6 2.1.2 JDK的构成6 2.1.3 JDK的使用6 2.2 IDE 8 2.2.1 IDE简介8 2.2.2 JBuilder 9 2.2.3 Eclipse 9 2.2.4 相关资源9 2.3 Project管理9 2.3.1 Project的含义9 2.3.2 可行的Project组织模式9 2.3.3 主要开发工具的Project目录10 2.4 本章小结10 习题10 第1章 Java语言概述与面向对象思想 1.1 Java语言的发展 1.1.1 Java语言的产生以介绍面向对象编程的基本概念、基本理论为重点,结合Java语言的语法规则、编程特点和设计思想、强调容易发生错误和编程应注意的地方,使学生能对Java 技术有一个总体了解,通过本课程学习,使学生掌握Java语言的基础知识,理解和掌握面向对象程序设计的基本思想,熟练地使用Java语言进行程序的编写、编译以及调试工作 上世纪90年代初期,Sun公司在研究一种适用于未来的智能设备的编程语言,该语言要具有一些新的特性,以避免C++的一些不足。 该语言起初命名为Oak,来源于语言作者Gosling办公室窗外的一棵橡树(Oak)。后来在注册时候遇到了冲突,于是就从手中的热咖啡联想到了印度尼西亚一个盛产咖啡的岛屿,中文名叫爪哇,Java语言得名于此。 随着Internet的迅速发展,Web应用日益广泛,Java语言也得到了迅速发展。1994年,Gosling

《Java语言程序设计基础教程》习题解答

《Java语言程序设计基础教程》练习思考题参考答案

第1章Java程序设计概述 1.9 练习思考题 1、Java运行平台包括三个版本,请选择正确的三项:() A. J2EE B. J2ME C. J2SE D. J2E 解答:A,B,C 2、Java JDK中反编译工具是:() A. javac B. java C. jdb D. javap 解答:D 3、public static void main方法的参数描述是:() A. String args[] B. String[] args C. Strings args[] D. String args 解答:A,B 4、在Java中,关于CLASSPATH环境变量的说法不正确的是:() A. CLASSPATH一旦设置之后不可修改,但可以将目录添加到该环境变量中。 B. 编译器用它来搜索各自的类文件。 C. CLASSPATH是一个目录列表。 D. 解释器用它来搜索各自的类文件。 解答:A 5、编译Java Application源文件将产生相应的字节码文件,扩展名为() A. .java B. .class C. .html D. .exe 解答:B 6、开发与运行Java程序需要经过的三个主要步骤为____________、____________和____________。 7、如果一个Java Applet源程序文件只定义有一个类,该类的类名为MyApplet,则类MyApplet必须是______类的子类并且存储该源程序文件的文件名为______。 8、如果一个Java Applet程序文件中定义有3个类,则使用Sun公司的JDK编译器编译该源程序文件将产生______个文件名与类名相同而扩展名为______的字节码文件。 9、开发与运行Java程序需要经过哪些主要步骤和过程? 10、Java程序是由什么组成的?一个程序中必须要有public类吗?Java源文件的命名规则是怎么样的? 11、编写一个简单的Java应用程序,该程序在命令行窗口输出两行文字:“你好,很高兴学习Java”和“We are students”。

《java语言基础》考试题

《java语言基础》练习题 一、单项选择题 1.Java是从()语言改进重新设计。 A.Ada B.C++ C.Pasacal D.BASIC 答案:B 2.下列语句哪一个正确() A.Java程序经编译后会产生machine code B.Java程序经编译后会产生byte code C.Java程序经编译后会产生DLL D.以上都不正确 答案:B 3.下列说法正确的有() A.class中的constructor不可省略 B.constructor必须与class同名,但方法不能与class同名C.constructor在一个对象被new时执行 D.一个class只能定义一个constructor 答案:C 4.提供Java存取数据库能力的包是() A.java.sql B.java.awt C.https://www.doczj.com/doc/831523145.html,ng D.java.swing 答案:A 5.下列运算符合法的是() A.&& B.<> C.if D.:=

答案:A 6.执行如下程序代码 a=0;c=0; do{ --c; a=a-1; }while(a>0); 后,C的值是() A.0 B.1 C.-1 D.死循环 答案:C 7.下列哪一种叙述是正确的() A.abstract修饰符可修饰字段、方法和类 B.抽象方法的body部分必须用一对大括号{ }包住C.声明抽象方法,大括号可有可无 D.声明抽象方法不可写出大括号 答案:D 8.下列语句正确的是() A.形式参数可被视为local variable B.形式参数可被字段修饰符修饰 C.形式参数为方法被调用时,真正被传递的参数D.形式参数不可以是对象 答案:A

java语言基础教程

一、标识符及字符集 Java语言规定标识符是以字母、下划线"_"或美元符号"$"开始,随后可跟数字、字母、下划线或美元符号的字符序列。Java标识符大小写敏感,没有长度限制,可以为标识符取任意长度的名字,但关键字不能作为标识符。为增强程序可读性,Java作如下的约定: 1.类、接口:通常使用名词,且每个单词的首字母要大写 2.方法:通常使用动词,首字母小写,其后用大写字母分隔每个单词 3.常量:全部大写,单词之间用下划线分隔 4.变量:通常使用名词,首字母小写,其后大写字母分隔每个单词,避免使用$符号。 Java语言使用国际字符集(Unicode)。Unicode字符集定义了一套国际标准字符集。通常的ASCII码是8位的,而Unicode字符集中的每个字符占16位,即2个字节,整个字符集共包括65336个字符,兼容ASCII,排在Unicode字符集最前面的256个字符就是ASCII码。Unicode除了可以表示256个ASCII码外,还可以表示汉字、拉丁语、希腊字母、朝鲜语等。 Java标识符总结:1.由字母、数字、_或$组成,不能以数字开头;2.严格区分大小写;3.长度不限 二、关键字 Java常用关键字列表如下:

分类如下: 1.访问控制:private 私有的 protected 受保护的 public 公共的 2.类、方法和变量修饰符abstract 声明抽象 class 类 extends 扩允,继承final 终极,不可改变的implements实现 interface 接口 native 本地 new 新,创建 static 静态 strictfp 严格,精准synchronized 线程,同步 transient 短暂 volatile 易失 3.程序控制语句 break 跳出循环 continue 继续 return 返回 do 运行while 循环 if 如果 else 反之 for 循 instanceof 实例 switch 开关 case 返回开关里的结果 default 默认 4.错误处理 catch 处理异常 finally 有没有异常都执行 throw 抛出一个异常对象 throws 声明一个异常可能被抛出 try 捕获异常 5.包相关import 引入 package 包 6.基本类型 boolean 布尔型 byte 字节型 char 字符型 double 双精度float 浮点 int 整型 long 长整型 short 短整型 null 空 true 真 false 假

Java语言入门教程

Java语言入门教程 引言 您有没有想过计算机程序是怎样工作的?您是否曾经想学习编写自己的计算机 程序?无论您是想自己写出游戏程序的14岁孩子,还是对计算机编程已经好奇了20年的70岁老人,这篇文章都适合您。在本文中,我将通过教您用Java程序设计语言编程使您了解计算机程序的原理。 在讲授计算机编程的知识之前,我首先做如下假设: ?我假设您目前对计算机编程一无所知。如果您已经懂一些编程知识的话那么本文的开始部分对您来说就会显得十分简单。尽可放心跳过这些章节,从新知识处开始学习。 ?我假设您对计算机的使用有一些了解。具体说就是我假设您已经知道如何编辑、复制、删除和重命名文件,以及如何获取有关您的系统的信息等等。 ?为简单起见,我假设您的机器运行Windows95、98、2000、NT或XP操作系统。使用其他操作系统的用户将这里学到的概念运用到自己的系统中应 该也是比较容易的。 ?我假设您有学习的欲望。 进行Java编程需要的所有工具都可以轻松在网上免费获得。网上还有大量的Java学习资料,所以学完本文以后您可以很容易去学习更多内容以继续提高水平。在这里学习的Java编程在编译器、开发环境、阅读材料等等上没有任何花销。学会了Java再学习其他的语言就变得容易了,所以这里是个不错的起点。 交待完这些事情,我们就准备好了。让我们开始吧! 编程术语 记住,我假定您不懂编程。下面是一些术语,它们将有助于您的理解:?计算机程序——计算机程序是一组指令,告诉计算机应该怎么做。指令可 以告诉计算机将几个数相加,或比较两个数字并根据比较的结果作出决 定,如此之类。计算机程序只是面向计算机的一组指令而已,正如菜谱是 厨师的指令,乐谱是乐师的指令一样。计算机准确地执行这些指令的同时 也就完成了有用的工作,如计算支票簿收支,或者在屏幕上显示一个游戏,或运行一个字处理程序。 ?编程语言——为了能使计算机辨识您给它的指令,这些指令需要以一种计算机能够理解的语言书写,即编程语言。有很多计算机编程语言:Fortran、Cobol、Basic、Pascal、C、C++、Java、Perl,正如有很多人类语言一样。 它们都是用不同的方式来表达类似的概念。 ?编译器——使用人可以阅读的编程语言(如Java)写好程序后,还要用编译器将其翻译成计算机可执行的形式。您很可能在您的计算机上见到过

Java语言基础

孙燮华编著《Java软件编程实例教程》清华大学出版社 第2章Java语言基础 本章主要学习Java语言的基本语法,包括标识符,数据类型、表达式、语句和数组等。 2.1标识符与关键词 2.1.1 标识符 1.标识符的定义规则 在Java中,对变量、类、接口和方法等进行命名所使用的字符串称为标识符。一个合法的标识符要满足以下的规则: ◆以英文大小写字母、下划线“_”、或“$”开始的一个字符序列。 ◆数字不能作为标识符的第1个字符。 ◆标识符不能是Java的关键词。 ◆标识符大小写敏感且长度没有限制。 例如,下面的字符串都是合法的标识符: USERNAME, _sys_VAR, $change, thisOne, 学生, a教授但下面的标识符是非法的: 3student, %name, -num, !_not, *ptr, @email

2.标识符风格约定 为了使命名更为规范,Java对标识符还有如下一些约定。 ◆对于变量名和方法名,不能用下划线“_”、和“$”作为标识符的第1个字符。因为这两个字符对于Java内部类具有特殊意义。 ◆类名、接口名、变量名和方法名采用大小写混合形式,每个英文单词的首字母用大写,其余用小写, 无空格连接。例如,HelloWorldFromJava。但变量名和方法名的首字母用小写,如firstVariableName。类名和接口名的首字母用大写,如类名HelloWorld。 ◆常量名完全用大写,且用下划线“_”作为标识符中每个单词的分隔符,例如,MAX_SIZE。 ◆方法名应使用动词,类名和接口名使用名词。 ◆变量名应有一定的意义,尽量不使用单个字符作为变量名。但临时性的变量,如循环控制变量可以用i, j, k等。 2.1.2 关键词 关键词是Java的保留字。Java编译器在词法扫描时需要区分关键词和一般的标识符。因此,用户自定义的标识符不能与这些关键词重名,否则会出现编译错误。另外,true, false和null虽然不是关键词,但也被保留,同样不能用来定义标识符。表2-1列出了Java的关键词。

Java语言程序设计(基础篇)原书第十版 梁勇著 第一章答案

第一章 1.1 public class Test{ public static void main(String[] args){ System.out.println("Welcome to Java !"); System.out.println("Welcome to Computer Science !"); System.out.println("Programming is fun ."); } } 1.2 public class Test{ public static void main(String[] args){ for(int i = 0;i <= 4;i++){ System.out.println("Welcome to Java !"); } } } 1.3 public class Test{ public static void main(String[] args){ System.out.println(" ]"); System.out.println(" ]"); System.out.println("] ]"); System.out.println(" ]]"); } } public class Test{ public static void main(String[] args){ System.out.println(" A"); System.out.println(" A A"); System.out.println(" AAAAA"); System.out.println("A A"); } } public class Test{ public static void main(String[] args){ System.out.println("V V"); System.out.println(" V V"); System.out.println(" V V"); System.out.println(" V"); } } 1.4 public class Test{ public static void main(String[] args){ System.out.println("a a^2 a^3");

【黑马基础班考试题】1.Java基础知识测试_答案

考试宣言: 同学们, 考试考多少分不是我们的目的! 排在班级多少的名次也不是我们的初衷! 我的考试的目的是要通过考试中的题目,检查大家在这段时间的学习中,是否已经把需要掌握的知识掌握住了,如果哪道题目你不会做,又或者做错了, 那么不用怕, 考完试后, 导师讲解的时候你要注意听! 那时候学会了, 记住了, 也一样不影响你高薪就业! 本套题共40道不定项选择题,其中单选30道,多选10道。单选2分/题,多选4分/题。多选题不全对半分,全对满分。 1.下面说法正确的是() A. JVM就是Java虚拟机,包含java核心类库// JRE: JVM+Java library。 B. JRE就是java运行环境,包含java程序编译运行的工具环境// JDK:JRE+Tools C. JDK就是java开发环境,javac是其中的一个工具 D. 功能范围:JDK > JVM > JRE 2.下面的说法正确的是( ) A. Java 语言是面向对象的、解释执行的网络编程语言。 B. Java 语言具有可移植性,是与平台无关的编程语言。 C. Java 语言可对内存垃圾自动收集。 D. Java 语言编写的程序虽然是“一次编译,到处运行”,但必须要java的运行环境。 3.给定java代码,如下: public byte count(byte b1, byte b2){ return ____; } 要使这段代码能够编译成功,横线处可以填入 A. (byte)(b1-b2) //返回值类型为byte,要求选项结果为byte B. b1-b2 C. (byte)b1+b2

D. (byte)b1/b2 4.关于类的命名,正确说法是() A. 可以由数字和英文拉丁字母组成,且可以任意排序//数字不能开头 B. 命名要做到见名知意 C. 如果是由多个单词组成,每个单词首字母大写 D. 可以是Java已经定义过的关键字//囧 5.关于main方法说法错误的是() A.main方法是java程序执行的入口 B.main方法的方法体至少要有一行代码//可以没有代码 C.main必须定义在一个类中 D. main方法的定义格式为:public static void main(String[] args){} 6.类中某方法定义如下: double fun(int a,int b){ return a*1.0/b; } 同一类内其它方法调用该方法的正确方式是: A. double a = fun(1,2); B. double a = fun(1.0,2.0); C. int x = fun(1,2); D. int x = fun(1.0,2.0); 7.给定java代码,如下,编译运行,结果是() public static void main(String[] args){ boolean flag; System.out.println(“flag”+flag);//局部变量需要先初始化再使用 } A. 编译错误 B. 编译通过,单出现运行时错误 C. 正常运行,输出flag=false D. 正常运行,输出flag= 8.下面哪个关键字可以定义一个类() A. interface B. class //查看下面解释 C. extends D. implements 在Oracle官网java英文原版教程,链接地址: https://https://www.doczj.com/doc/831523145.html,/javase/tutorial/java/IandI/createinterface.html上有如下解释:In the Java programming language, an interface is a reference type,similar to a class, that can contain only constants,

Java程序设计基础教程

Java程序设计基础教程 第一章概述 本章技能目标 (1)了解Java语言的由来、特点、家族成员及实现机制。 (2)熟悉JDK开发环境的安装与配置。 (3)会使用Eclipse开发第一个Java应用程序。 重点和难点 开发环境的配置与使用。 1.1Java语言简洁 1.1.1Java语言的由来 Java是由SUN公司开发而成的新一代编程语言。 Oak。 咖啡(Java)。 Java大家庭: (1)J2ME—即Java2 Micro Edition。 (2)J2SE—即Java2(Software Development Kit)Standard Edition。 (3)J2EE—即Java2 Enterprise Edition(可扩展的企业应用Java2平台)。 1.1.2Java语言的特点 面向对象与面向过程。 高级语言程序必须转换为机器语言程序才能执行,但不同的计算机系统所使用的机器语言不同。 一次编译,随处运行。 任何系统只有安装了Java虚拟机(Java Virtual Machine,JVM)后,才可以执行Java程序。 当JVM解释执行Java程序时,Java实时编译器(Just-In-Time,JIT)会将字节码译成目标平台对应的机器语言的指令代码。编译器会产生一种具备结构中立性的对象文件格式,即Java字节码文件。 在Java中,这种供虚拟机理解的代码叫做字节码(ByteCode),它不面向任何特定的处理器,之面向虚拟机。 Java字节码可在任何安装了Java虚拟机的平台上运行。 每一种平台的解释器是不同的,但是实现的虚拟机是相同的。Java源程序经过编译器编译后变成字节码。字节码由虚拟解释执行,虚拟机将每一条要执行的字节码送给解释器,解释器将其翻译成特定机器上的机器码,然后再特定的机器上运行。其执行过程如图1-1所示。 1.2开发环境配置与使用 1.2.1JDK的安装与配置 在开发Java应用程序前必须首先下载并安装JDK。目前JDK最新版本是1.6。 2.认识JDK (1)bin目录。提供了工具程序,包括javac、java、javadoc、appletviewer等程序。 1)javac用于将Java源代码编译成字节码。其语法为: Javac [option] source 其中,[option]可包括以下几项: ①-classpath<路径>,指定将使用的类路径,以搜索.class文件。 ②-d<目录>,制定用于存放经过编译的.class文件的目录。“.”表示当前目录。 Source是以扩展名.java结尾的一个或多个文件名。 2)java用于执行java字节码。其语法为: Java [option] classname [arguments] 其中,[option]可包括以下几项: ①-classpath<路径>,指定将使用的备用类路径。

实验一、java语言基础

实验一、java语言基础 一、实验目的 1.熟悉J a v a的运行环境。 2.掌握编写与运行J a v a程序的方法。 3.熟练掌握J a v a中的数据类型、运算符、表达式及流程控制语句。 4.掌握数组的定义、建立及其使用方法。 5.熟悉J a v a一般程序的结构。。 二、实验要求 1.熟悉J a v a的运行环境E c l i p s e。 2.编写一个J a v a应用程序,在屏幕上输出”h e l l o,j a v a!”。3.编写一个J a v a小应用程序,在屏幕上输出”h e l l o,j a v a!”。4.掌握运行J a v a程序的步骤。 5.浏览S D K自带的A p p l e t应用小程序。 6.编写一个声明J a v a不同数据类型变量的程序。 7.编写一个使用运算符、表达式、变量的程序。 8.编写表达式语句、复合语句的程序。 9.编写使用不同选择结构的程序。 10.编写使用不同循环结构结构的程序。 11.编写一个使用J a v a数组的程序。 三、实验内容 (一)编写Java a p p l i c a t i o n源程序 在E c l i p s e环境下,编写程序如下: p u b l i c c l a s s H e l l o{ p u b l i c s t a t i c v o i d m a i n(S t r i n g a r g s[]){ S y s t e m.o u t.p r i n t l n("H e l l o,w e l c o m e!"); } } 运行此应用程序,查看运行结果。 (二)编写J a v a a p p l e t源程序 1.在E c l i p s e环境下键入如下程序: H e l l o A p p l e t.j a v a i m p o r t j a v a.a w t.G r a p h i c s; i m p o r t j a v a.a p p l e t.A p p l e t; p u b l i c c l a s s H e l l o A p p l e t e x t e n d s A p p l e t{ p u b l i c v o i d p a i n t(G r a p h i c s g){ g.d r a w S t r i n g(“H e l l o,w e l c o m e!”,10,20); } } 2.编译j a v a小程序 j a v a c H e l l o A p p l e t.j a v a 3.建立i n d e x.h t m l文件,嵌入H e l l o A p p l e t.c l a s s

Java语言基础

1.1 Java标识符有什么规定和特点? 在源程序设计中,绝大多数语言都采用标识符,在Java程序设计中,也允许程序员采用标识符来对变量、方法和类进行命名。 在Java语言中,标识符可以含任意多个字母、数字、下划线或美元符号,但第一个字符必须为字母、下划线或美元符号。Java不采用通常计算机系统采用的ASCII代码级,而是采用更为国际化的Unicode字符集。在这种字符集中,每个字符用二个字节即16位表示。这样,整个字符集中共包含65535个字符。其中,前面256个表示ASCII码,使其对ASCII码具有兼容性;后面21000个字符用来表示汉字、日文片假名、平假名和朝鲜文等。但是Unicode只用在Java平台内部,当涉及打印、屏幕显示、键盘输入等外部操作时,仍由具体计算机的操作系统决定表示方法。比如,用英文操作系统时,采用8位二进制表示的ASCII 码。 1.2 Java语言中有哪些关键字?定义了这些关键字后,程序员应注意什么问题? 关键字就是在程序设计中已经被赋予特定意义的一些单词。通常,关键字也叫保留字。由于编译器在编译过程中进行词法扫描时,对关键字作特殊对待,所以,程序员在程序设计时,要注意不可以把这类单词作为标识符来用,否则会使编译出错。 Java语言中的关键字如下: abstract boolean break byte case catch char class continue default do double else extends false find finally float for if implements import instanceof int interface long native new null package private protected public return short static super switch synchronized this throw throws transient true try void volatile while 2.1 在Java源程序中,有哪集中插入注释的方法? Java源程序中,允许用三种插入注释的方式,插入注释使程序更加易读易懂。这三种方式及相应例子如下: a:以“//“作为开头,知道此行末尾。如://comment on one line. b:以“/*“作为开头,直到”*/“结束。如:/* comment on one or more lines */ c:以“/**“作为开头,以”*/“作为结束。如/** documenting comment having many lines*/ 2.2 Java的变量有哪些类型?变量如何定义?如何初始化? Java的变量有两大类:基本类型和复合类型。基本类型包括数值型、布尔型和字符型;复合类型包括数组和字符串,他们是由基本类型组合而成的。 和大多数高级语言一样,Java语言也要求变量在使用前进行定义。变量的定

JAVA新手入门基础全面学习教程

JAVA新手入门基础学习 一、技术优势 1、Java 编程语言是个简单、面向对象、分布式、解释性、健壮、安全与系统无关、可移植、高性能、多线程和动态的语言。 2、Java 平台是基于 Java 语言的平台。这样的平台非常流行。因此微软公司推出了与之竞争的.NET平台以及模仿Java的C#语言。 3、Java是功能完善的通用程序设计语言,可以用来开发可靠的、要求严格的应用程序。 二、基本含义 抽象类:规定一个或多个抽象方法的类别本身必须定义为abstract,抽象类只是用来派生子类,而不能用它来创建对象。 final类:又称“最终类”,它只能用来创建对象,而不能被继承,与抽象类刚好相反,而且抽象类与最终类不能同时修饰同一个类。 包:Java中的包是相关类和接口的集合,创建包须使用关键字package。 继承:Java作为面向对象编程语言,支持继承这基本概念。但Java只支持单根继承, 多态类:在Java中,对象变量是多态的。而Java中不支持多重继承。 接口:Java中的接口是一系列方法的声明,是一些方法特征的集合,一个接口只有方法的特征没有方法的实现,因此这些方法可以在不同的地方被不同的类实现,而这些实现可以具有不同的行为。 通用编程:任何类类型的所有值都可以同Object类型的变量来代替。 封装:把数据和行为结合起在一个包中,并对对象使用者隐藏数据的实现过程,一个对象中的数据叫他的实例字段(instance field)。 重载:当多个方法具有相同的名字而含有不同的参数时,便发生重载。编译器必须挑选出调用哪个方法进行编译。 重写:也可称为方法的“覆盖”。在Java中,子类可继承父类中的方法,而不需要重新编写相同的方法。但有时子类并不想原封不动地继承父类的方法,而是想作一定的修改,这就需要采用方法的重写。值得注意的是,子类在重新定义父类已有的方法时,应保持与父类完全相同的方法头声明。 Class类:Object类中的getClass方法返回Class类型的一个实例,程序启动时包含在main 方法的类会被加载,虚拟机要加载他需要的所有类,每一个加载的类都要加载它需要的类。

java语言基本语法

关键字 分号:在Java中 ,有一些字符被当作分隔符使用,最常用的分隔符是分号();,用来分 关键字都是小写字母 关键字不要作为标识符使用 空白:在代码中遇到运算符时,例如 = 等,两端留出空格,增强代码可读性。 代码行之间,可以根据逻辑关系加空白行,增强可读性 { }花括号 –用来包括自动初始化的数组的值 –用来定义程序块,类,方法以及局部范围 Java注释

–// 单行注释 –/* 单、多行注释 */ –/** 文档注释 */ 2 标识符的概念 给变量命名是尽量做到见名知义。 –Java语言中,对于变量,常量,方法,都有名字,统统称之为Java标识符。 –标识符是用来给类、对象、方法、变量、接口和自定义数据类型命名的。 标识符的命名规则: –某一个区域中是唯一的,在不同的区域中可以使用同一名字 –必须由字母、数字、下划线和$符号组成 –不能以数字开头 –不能使用非法的字符,如:#,%.......&等 –不能使用系统关键字 –不能使用空格来分隔 –长度无限制 –严格区分大小写 –不同的标识符有一定的命名规矩 –对于常量的命名要注意初始值 例如: myName,$points, _sys_ta是合法的 #name,25name,class,&time 是非法的 标识符的命名约定 –类和接口名:每个字的首字母大写,例如MyClass,HelloWorld等。 –方法名。首字母小写,其余的首字母大写,尽量少用下划线。例如,myName,setTime等。这种命名方法叫做驼峰式命名。 –常量名。基本数据类型的常量名使用全部大写字母,字与字之间用下划线分隔。对象常量可大小混写。例如,SIZE_NAME。

Java基础入门教程(适合所有初学者)

JVAV基础入门教程 第1章Java语言概述与面向对象思想1 1.1Java语言的发展1 1.1.1Java语言的产生1 1.1.2Java语言的发展1 1.2Java语言的特点2 1.3面向对象与面向过程的差异3 1.3.1面向过程思想回顾4 1.3.2面向对象思想介绍4 1.4面向对象程序设计中的主要概念和特征4 1.4.1主要概念5 1.4.2主要特征5 *1.5Java与C++的差异5 1.6本章小结5 习题5 第2章Java语言开发环境6 2.1JDK6 2.1.1JDK的简介6 2.1.2JDK的构成6 2.1.3JDK的使用6 2.2IDE8 2.2.1IDE简介8 2.2.2JBuilder9 2.2.3Eclipse9 2.2.4相关资源9 2.3Project管理9 2.3.1Project的含义9 2.3.2可行的Project组织模式9 2.3.3主要开发工具的Project目录10 2.4本章小结10 习题10 第1章Java语言概述与面向对象思想 1.1Java语言的发展 1.1.1Java语言的产生 上世纪90年代初期,Sun公司在研究一种适用于未来的智能设备的编程语言,该语言要具有一些新的特性,以避免C++的一些不足。 该语言起初命名为Oak,来源于语言作者Gosling办公室窗外的一棵橡树(Oak)。后来在注册时候遇到了冲突,于是就从手中的热咖啡联想到了印度尼西亚一个盛产咖啡的岛屿,中文名叫爪哇,Java语言得名于此。 随着Internet的迅速发展,Web应用日益广泛,Java语言也得到了迅速发展。1994年,Gosling 用Java开发了一个实时性较高、可靠、安全、有交互功能的新型Web浏览器,它不依赖于任何硬件平台和软件平台。这种浏览器名称为HotJava,并于1995年同Java语言一起,正式

Java基础入门教程(适合所有初学者)

java 入门学习大全 来源:QQ群418355531获取更多资料可加群[java 入门培训-java 入门试学7天] 第1章 Java语言概述与面向对象思想 1 1.1 Java语言的发展 1 1.1.1 Java语言的产生1 1.1.2 Java语言的发展1 1.2 Java语言的特点 2 1.3 面向对象与面向过程的差异 3 1.3.1 面向过程思想回顾 4 1.3.2 面向对象思想介绍 4 1.4 面向对象程序设计中的主要概念和特征 4 1.4.1 主要概念 5 1.4.2 主要特征 5 *1.5 Java与C++的差异 5 1.6本章小结 5 习题 5 第2章 Java语言开发环境 6 2.1 JDK 6 2.1.1 JDK的简介6 2.1.2 JDK的构成6 2.1.3 JDK的使用6 2.2 IDE 8 2.2.1 IDE简介8

2.2.2 JBuilder 9 2.2.3 Eclipse 9 2.2.4 相关资源9 2.3 Project管理9 2.3.1 Project的含义9 2.3.2 可行的Project组织模式 9 2.3.3 主要开发工具的Project目录10 2.4 本章小结 10 习题10 第1章 Java语言概述与面向对象思想 1.1 Java语言的发展 1.1.1 Java语言的产生 上世纪90年代初期,Sun公司在研究一种适用于未来的智能设备的编程语言,该语言要具有一些新的特性,以避免C++的一些不足。 该语言起初命名为Oak,来源于语言作者Gosling办公室窗外的一棵橡树(Oak)。后来在注册时候遇到了冲突,于是就从手中的热咖啡联想到了印度尼西亚一个盛产咖啡的岛屿,中文名叫爪哇,Java语言得名于此。 随着Internet的迅速发展,Web应用日益广泛,Java语言也得到了迅速发展。1994年,Gosling用Java开发了一个实时

JAVA语言基础练习题

注:题目没有涵盖所有知识点。 仅作为学习过程中知识点的巩固 第一章JAV A语言基础 ()反映了JA V A程序的并行机制;()使JA V A更加健壮。 变量a和A不同对不对() JA V A发展最初是面向()而设计的 最新的JDK版本:() 用什么命令把java源文件编译生成字节码文件/类文件/class文件() 用什么命令解释运行字节码文件/类文件/class文件() 用什么命令能够运行applet小应用程序() applet程序运行的html代码中的applet标记,其中三个必要属性是什么() 了解JA V A 5的新特性都有哪些:() 第二章JA V A语言程序设计基础 以下哪个可以作为变量名字:A hello* B tom_name C 3cups D a cup 以下哪个不是JA V A的关键字:A SUPER B this C synchronized D extends 以下是JA V A简单/基本数据类型的为:A Short B Boolean C char D unit int short long char float double boolean byte String JA V A语言中每个字符占几个字节:A 1 B 2 C 3 D 4 JA V A语言使用(Unicode )字符集。 写出以下代码的输出结果:( 0 ) class A{ static int i; public static void main(String args[]){ System.out.println(i++); } } 分析以下代码的结果(ok) class A{ public static void main(String args[]){ boolean b=false; if(b=true) System.out.println(“ok”); else System.out.println(“no”); } } 以下表达式错误的是:A float f=2.3f; B double d=4.5; C boolean b=true; D c=(a= =b)?a:b 以下表达式错误的是:A float f=2.3F; B double d=4.5D; C boolean b=true; D char c=”a”; 若i值为5,分析以下表达式执行之后的结果:b=5==6&&i++==6; (b为false,i为5)若i值为5,分析以下表达式执行之后的结果:b=5<=6||++i==6; (b为true,i为6)若i值为5,分析以下表达式执行之后的结果:b=5==6&i++==6; (b为false,i为6)若i值为5,分析以下表达式执行之后的结果:b=5<=6|++i==6; (b为true ,i为6)

《Java语言程序设计基础教程》习题解答 (1)

第1章 Java程序设计概述 1.9 练习思考题 1、Java运行平台包括三个版本,请选择正确的三项:() A. J2EE B. J2ME C. J2SE D. J2E 解答:A,B,C 2、Java JDK中反编译工具是:() A. javac B. java C. jdb D. javap 解答:D 3、public static void main方法的参数描述是:() A. String args[] B. String[] args C. Strings args[] D. String args 解答:A,B 4、在Java中,关于CLASSPA TH环境变量的说法不正确的是:() A. CLASSPA TH一旦设置之后不可修改,但可以将目录添加到该环境变量中。 B. 编译器用它来搜索各自的类文件。 C. CLASSPA TH是一个目录列表。 D. 解释器用它来搜索各自的类文件。 解答:A 5、编译Java Application源文件将产生相应的字节码文件,扩展名为() A. .java B. .class C. .html D. .exe 解答:B 6、开发与运行Java程序需要经过的三个主要步骤为____________、____________和____________。 7、如果一个Java Applet源程序文件只定义有一个类,该类的类名为MyApplet,则类MyApplet必须是______类的子类并且存储该源程序文件的文件名为______。 8、如果一个Java Applet程序文件中定义有3个类,则使用Sun公司的JDK编译器编译该源程序文件将产生______个文件名与类名相同而扩展名为______的字节码文件。 9、开发与运行Java程序需要经过哪些主要步骤和过程? 10、Java程序是由什么组成的?一个程序中必须要有public类吗?Java源文件的命名规则是怎么样的? 11、编写一个简单的Java应用程序,该程序在命令行窗口输出两行文字:“你好,很

相关主题
文本预览
相关文档 最新文档