java的语法
Ⅰ java的语法
1)Object s=e.getSource();//Object是什么意思?
Object,就是java世界中所有类的根类,就是所有类的祖先,其他类都实现object类里面的方法
2)if(s instanceof JButton){//instanceof是什么意思?
A instanceof B:判断A是否是B的实例(具体的一个例子)
举个例子就是:有的人是学生,有的人是老师,现在有个人想用学生的方法,但实例话这个人的时候实例化的是人,并不是学生(虽然你知道他是个学生),这怎么办呢?强转的话会报错,虚拟机认为不能把一个人强转成学生,这时候就应该用instanceof判断一下,看那个人是否是学生的实例,是的话,就可以强转,执行学生的方法.
例子有点绕,希望你能理解....
3) JButton b=(JButton)s;//JBtton加括号是什么意思?
如果s是JButton的实例(也就是说s是个JButton),则执行这行代码,将S强转成JButton
....
}
Ⅱ JAVA语法
这是匿名内部类,隐藏内部类命名,内部匿名类,就是建立一个内部的类,但没有给你命名,也就是没有引用实例的变量。
new 是建立一个 ActionListener对象 ,后面一个 {} 表示这个括号中的操作作用于这个默认的对象,而上面的actionPerformed是一个方法。
就是addActionListener需要传一个ActionListener对象作为参数,而ActionListener必须实现actionPerformed方法
Ⅲ java中的语法是什么意思
语法就是编程语言的规则啊, 例如java中定义一个整数类型的变量:
int i= 10;
而在javascript里是这样的
var i = 10;
例如在java中写个方法(函数)是这样的:
public int getNumber(){
return i;
}
javascript里是这样的:
function getNumber(){
reture i;
}
Ⅳ 如何获得java语法正确吗
java中的语法是指java中的规则,即java的命名规则:
包的命名 (全部小写,由域名定义)
Java包的名字都是由小写单词组成。但是由于Java面向对象编程的特性,每一名Java程序员都 可以编写属于自己的Java包,为了保障每个Java包命名的唯一性,在最新的Java编程规范中,要求程序员在自己定义的包的名称之前加上唯一的前缀。 由于互联网上的域名称是不会重复的,所以程序员一般采用自己在互联网上的域名称作为自己程序包的唯一前缀。例如:net.frontfree.javagroup
类的命名 (单词首字母大写)
根据约定,Java类名通常以大写字母开头,如果类名称由多个单词组成,则每个单词的首字母均应为大 写例如TestPage;如果类名称中包含单词缩写,则这个所写词的每个字母均应大写,如:XMLExample,还有一点命名技巧就是由于类是设计用来 代表对象的,所以在命名类时应尽量选择名词。
例如: Graphics
方法的命名 (首字母小写,字母开头大写)
方法的名字的第一个单词应以小写字母作为开头,后面的单词则用大写字母开头。
例如:drawImage
常量的命名 (全部大写 ,常加下划线)
常量的名字应该都使用大写字母,并且指出该常量完整含义。如果一个常量名称由多个单词组成,则应该用下划线来分割这些单词。
例如:MAX_VALUE
参数的命名
参数的命名规范和方法的命名规范相同,而且为了避免阅读程序时造成迷惑,请在尽量保证参数名称为一个单词的情况下使参数的命名尽可能明确。
知识扩展:
在变量命名时要注意以下几点:
1.选择有意义的名字,注意每个单词首字母要大写。
2.在一段函数中不使用同一个变量表示前后意义不同的两个数值。
3.i、j、k等只作为小型循环的循环索引变量。
4.避免用Flag来命名状态变量。
5.用Is来命名逻辑变量,如:blnFileIsFound。通过这种给布尔变量肯定形式的命名方式,使得其它开发人员能够更为清楚的理解布尔变量所代表的意义。
6.如果需要的话,在变量最后附加计算限定词,如:curSalesSum。
7.命名不相包含,curSales和curSalesSum。
8.static final 变量(常量)的名字应该都大写,并且指出完整含义。
9.如果需要对变量名进行缩写时,一定要注意整个代码中缩写规则的一致性。例如, 如果在代码的某些区域中使用intCnt,而在另一些区域中又使用intCount,就会给代码增加不必要的复杂性。建议变量名中尽量不要出现缩写。
10.通过在结尾处放置一个量词,就可创建更加统一的变量,它们更容易理解,也更容易搜索。例如,请使用 strCustomerFirst和strCustomerLast,而不要使用strFirstCustomer和strLastCustomer。常 用的量词后缀有:First(一组变量中的第一个)、Last(一组变量中的最后一个)、Next(一组变量中的下一个变量)、Prev(一组变量中的上 一个)、Cur(一组变量中的当前变量)。
11.每个变量选择最佳的数据类型,这样即能减少对内存的需求量,加快代码的执行速度,又会降低出错的可能性。用于变量的数据类型可能会影响该变量进行计算所产生的结果。在这种情况下,编译器不会产生运行期错误,它只是迫使该值符合数据类型的要求。这类问题极难查找。
12.尽量缩小变量的作用域。如果变量的作用域大于它应有的范围,变量可继续存在,并且在不再需要该变量后的很长时间内仍然占用资源。它们的主要问题是,任何类 中的任何方法都能对它们进行修改,并且很难跟踪究竟是何处进行修改的。占用资源是作用域涉及的一个重要问题。对变量来说,尽量缩小作用域将会对应用程序的 可靠性产生巨大的影响。
关于常量的命名方法,在JAVA代码中,无论什么时候,均提倡应用常量取代数字、固定字符串。也就是 说,程序中除0,1以外,尽量不应该出现其他数字。常量可以集中在程序开始部分定义或者更宽的作用域内,名字应该都使用大写字母,并且指出该常量完整含 义。如果一个常量名称由多个单词组成,则应该用下划线“_”来分割这些单词如:NUM_DAYS_IN_WEEK、MAX_VALUE。
Ⅳ java语法有哪些
这么问,那我觉得,你对java完全不了解,虽然,我也答不上来。
个人,建议你找一本java入门的书籍来学。从一开始的语言语法学起,再学它的面向对象的特性。再进阶的话,学学javaee,做一做项目,应该就差不多正式入门了。
Ⅵ java简单语法
Date是日期数据类型
类 Date 表示特定的瞬间,精确到毫秒。
在 JDK 1.1 之前,类 Date 有两个其他的函数。它允许把日期解释为年、月、日、小时、分钟和秒值。它也允许格式化和分析日期字符串。不过,这些函数的 API 不易于实现国际化。从 JDK 1.1 开始,应该使用 Calendar 类实现日期和时间字段之间转换,使用 DateFormat 类来格式化和分析日期字符串。Date 中的相应方法已废弃。
final Cat cat = (Cat) other;是将other强行转为Cat类型 而且设cat为常量 不难更改
至于equals和hashCode 肯定是重写方法拉
Ⅶ java语法是什么
用法:
WEST JAVA西爪哇
East Java东爪哇
Java Runtime Envirnment环境 ; 运行环境
读法:
英[ˈdʒɑːvə]美[ˈdʒɑːvə]
解释:
n. (非正式)咖啡
n. (Java) Java 语言(一种计算机编程语言);爪哇岛
n. (Java)(印、美)杰娃(人名)
近义词:
coffee
读法:
英[ˈkɒfi]美[ˈkɔːfi]
解释:
n. 咖啡;咖啡豆;咖啡色
n. (Coffee)人名;(英)科菲
用法:
Coffee table茶几 ; 咖啡台 ;[家具]咖啡桌 ; 矮茶几
Coffee County科菲县
Coffee Bean咖啡豆 ; 香啡缤 ; 咖啡豆色
Ⅷ JAVA有哪些实用的基本语法
. 表达式语句
int k, i=3, j=4;�
k=i+j;�
System.out.println(〃k=〃+k);
2. 复合语句
class Block {�
public static void main(String args〔〕) {�
int k, i=3, j=4;�
k=i+j;�
System.out.println(〃k=〃+k);�
{�
float f;�
f=j+4.5F;�
i++;�
System.out.println(〃f=〃+f);�
}�
System.out.println(〃i=〃+i);�
}�
}
选择语句
利用选择语句结构可以根据条件控制程序流程,改变程序执行的顺序。
if语句
if语句的语法格式为:
if (条件表达式)�
s1语句;
这是最简单的单分支结构。条件表达式的值为true,就执行s1语句,否则就忽略s1语句。s1语句可以是复合语句。
if…else语句
if语句通常与else语句配套使用,形成二分支结构。它的语法格式为:
if (条件表达式)�
s1语句;�
else�
s2语句;
当条件表达式的值为true,就执行s1语句,忽略else和s2语句;条件表达式的值为false,程序忽略s1语句,执行else后面的s2语句。s1和s2都可以是复合语句。
if…else复合结构
对于复杂的情况,可以嵌套使用if…else语句。它的语法格式为:
if (条件表达式1)�
s1语句;�
else if (条件表达式2)�
s2语句;�
else�
s3语句;
在这里依次计算条件表达式,如果某个条件表达式的值为true,就执行它后面的语句,其余部分被忽略;所有表达式的值都为false,就执行最后一个else后的s3语句。s1、s2和s3都可以是复合语句。
switch开关语句
虽然嵌套的条件语句可实现多个分支处理,但嵌套太多时容易出错和混乱,这时可以使用开关语句switch处理。实际上开关语句switch也是一种if…else结构,不过它使你在编程时很容易写出判断条件,特别是有很多条件选项的时候。
开关语句switch的语法格式:
switch (表达式) {�
case 常量1:�
语句1;�
break;
case 常量2:�
语句2;�
break;�
......�
default:�
语句n;�
}
其中switch、case、default是关键字,default子句可以省略。开关语句先计算表达式,然后将表达式值与各个常量比较,如果表达式值与某个常量相等,就执行该常量后面的语句;如果都不相等,就执行default下面的语句。如果无default子句,就什么都不执行,直接跳出开关语句。
使用开关语句时,注意以下几点:
? case后面的常量必须是整数或字符型,而且不能有相同的值;
? 通常在每一个case中都应使用break语句提供一个出口,使流程跳出开关语句。否则,在第一个满足条件case后面的所有语句都会被执行,这种情况叫做落空。
循环语句
循环可使程序根据一定的条件重复执行某一部分程序代码,直到满足终止循环条件为止。
Java中提供的循环语句有: 确定次数循环(for)、条件循环(while)、先执行后判定循环(do)。
for循环语句
如果希望程序的一部分内容按固定的次数重复执行,通常可以使用for循环。for循环采用一个计数器控制循环次数,每循环一次计数器就计数,直到完成给定的循环次数为止。
for循环的语法格式为:
for (表达式1; 表达式2; 表达式3)�
循环体
其中表达式1可以给出计数器的初值,是一个赋值语句;表达式2指出循环结束条件,是一个逻辑表达式;表达式3指出计数器每次的增量,是一个赋值语句。
注意: 计数器可在for语句之前定义,也可在循环括号中定义。计数器增量为1时常写成增量运算的形式,以加快运算速度。根据需要,增量可以大于或小于1。增量计算也可以放在循环体中进行,即把表达式3移到循环体内的适当位置,原位置为空。
使用循环语句时常常会遇到死循环的情况,也就是无限制地循环下去。所以在使用for循环时,要注意初值、终值和增量的搭配。终值大于初值时,增量应为正值,终值小于初值时,增量应为负值。编程时必须密切关注计数器的改变,这是实现正常循环避免陷入死循环的关键。
while循环语句
while循环不像for循环那么复杂,while循环只需要一个条件判断语句,便可以进行循环操作。
while循环的语法格式为:
while (条件表达式) �
循环体
其中while是关键字。每次循环之前都要计算条件表达式,其值为true时,就执行一次循环体中的语句,然后再计算条件表达式,决定是否再次执行循环体中的语句;如果条件表达式的值为false时,就跳出循环体,执行循环体下面的语句。
注意: while循环中的条件表达式是逻辑表达式,所以循环体中一定要有改变条件表达式值的语句,使条件表达式的值有机会变为false,否则会陷入死循环。
do…while循环语句
do…while循环与while循环相反,是先执行循环体中的语句,再计算while后面的条件表达式,若条件表达式值为false则跳出循环;否则继续下一轮循环。
有些情况下,不管条件表达式的值是为true还是false,都希望把指定的语句至少执行一次,那么就应使用do…while循环。
do…while循环的语法格式为:
do {�
循环体�
} while (条件表达式);
其中do、while是关键字。程序首先执行do下面的循环体,然后计算while后面条件表达式的值,如果其值为true,则重复执行循环体;否则,就结束循环。
与while循环相同,do循环在循环体中也一定要有改变条件表达式值为false的语句,否则会陷入死循环。do…while循环控制并不是很常用,但有时却非常重要,使用时特别注意不要忘记了while语句结尾处的分号“;”。
循环语句嵌套
ex:做个例子 是累计求和的。
�
public class Sum1 {�
public static void main(String args〔〕) {�
int n=10, sum=0;�
while (n>0) {�
sum=0;�
for (int i=1; i<=n; i++)�
sum+=i;�
System.out.println(〃前〃+n+〃个数的总和为: 〃+sum);�
n--;�
}�
}�
}
循环语句小结
一个循环一般应包括4部分内容。
(1) 初始化部分: 用来设置循环的一些初始条件,计数器清零等。
(2) 循环体部分: 这是反复被执行的一段代码,可以是单语句,也可以是复合语句。
(3) 迭代部分: 这是在当前循环结束,下一次循环开始时执行的语句,常用来使计数器加1或减1。
(4) 终止部分: 通常是一个布尔表达式,每一次循环要对该表达式求值,以验证是否满足循环终止条件。
跳转语句
跳转语句可以无条件改变程序的执行顺序。Java支持3种跳转语句: break、continue和return。
break语句
break语句提供了一种方便的跳出循环的方法。使用break语句可以立即终止循环,跳出循环体,即使循环没有结束也如此。
break语句的使用示例,输出结果如图3.10所示。
class B {�
public static void main(String args〔〕) {�
boolean test=true;�
int i=0;�
while (test) {�
i=i+2;�
System.out.println(〃i=〃+i);�
if (i>=10)�
break;�
}�
System.out.println(〃 i为〃+i+〃时循环结束〃);�
}�
}
带标号的break语句
标号是标记程序位置的标识符。break语句只能跳转到循环语句下面的第一条语句上,而带标号的break语句可直接跳转到标号处。正常的break只退出一重循环,如果要退出多重循环,可以使用带标号的break语句。它的语法格式为:
标识符:�
…�
break 标识符;
做个例子说明
运行该工程,正常情况下可从键盘接受16个输入字符,但当输入b按回车时,break lab1语句就会结束二重循环。
class B1 {�
public static void main(String args〔〕) throws java.io.IOException {�
char ch;��
lab1: // 此处为标号标识符�
for (int i=0; i<4; i++)�
for (int j=0; j<4; j++) {�
ch=(char)System.in.read();�
System.in.skip(2);�
if (ch==′b′)�
break lab1;//跳到标号标识符处�
if (ch==′c′)�
System.out.println(〃继续〃);
}�
System.out.println(〃结束两重循环〃);�
}�
}
continue语句
continue语句只能用在循环结构中,它跳过循环体中尚未执行的语句,重新开始下一轮循环,从循环体第一个语句开始执行。
下面的可以输出1~9中除6以外所有偶数的平方值
class C2 {�
public static void main(String args〔〕) {�
for (int i=2;i<=9;i+=2) {�
if (i==6)�
continue; �
System.out.println(i+〃 的平方 = 〃+i*i); }�
}�
}
带标号的continue语句
Java也支持带标号的continue语句,它通常用在嵌套循环的内循环中,可以用标号标出想跳到哪一条语句继续重复执行程序。其语法格式为:
标识符:�
…�
continue 标识符;
带标号的continue语句的使用
class C3{�
public static void main(String args〔〕) {�
lab1:�
for (int i=1; i<=3; i++)�
for (int j=1; j<=3; j++) {�
System.out.println(〃i:〃+i+〃 j:〃+j);�
if (i+j>3) {�
System.out.println(〃Continue〃);�
continue lab1;�
}�
System.out.println(〃i=〃+i+〃 j=〃+j);�
}�
}�
}
求100~200间的所有素数。用嵌套的for循环做
public class Find {�
public static void main(String args〔〕) {�
System.out.println(〃 ** 100~200间的所有素数 **〃);�
int n=0;��
outer:�
for (int i=101; i<200; i+=2) {�
int k=15;�
for (int j=2; j<=k; j++)�
if (i%j==0)�
continue outer;�
System.out.print(〃 〃+i);�
n++;�
if (n<10)�
continue;
System.out.println();�
n=0;�
}�
System.out.println();�
}�
}
return语句
return语句用于方法的返回上,当程序执行到return语句时,终止当前方法的执行,返回到调用这个方法的语句。return语句通常位于一个方法体的最后一行,有带参数和不带参数两种形式,带参数形式的return语句退出该方法并返回一个值。
当方法用void声明时,说明不需要返回值(即返回类型为空),应使用不带参数return语句。不带参数的return语句也可以省略,当程序执行到这个方法的最后一条语句时,遇到方法的结束标志}就自动返回到调用这个方法的程序中。
带参数的return语句格式为:
return 表达式;
当程序执行到这个语句时,首先计算“表达式”的值,然后将表达式的值返回到调用该方法的语句。返回值的数据类型必须与方法声明中的返回值类型一致,可以使用强制类型转换来使类型一致。
带参数的return语句的使用
class CircleArea {�
final static double PI=3.14159;�
public static void main(String args〔〕) {�
double r1=8.0, r2=5.0;�
System.out.println(〃半径为〃+r1+〃的圆面积=〃+area(r1));�
System.out.println(〃半径为〃+r2+〃的圆面积=〃+area(r2));�
}�
static double area(double r) {�
return (PI*r*r);�
}�
}
Ⅸ java语法有哪些
Java程序中的每个变量要么是基本数据类型(boolean, char, byte, short, int, long, float, double),要么是对对象的引用
C++有许多种基本类型,额外还有struct, union, enum, 数组和指针,C++指针可以指向对象,也可以不指向对象
Java没有枚举、联合类型,因为Java认为没有必要。将可有可无的语言元素去掉是Java对C/C++做出的一大改变,因此,普遍认为Java较C++更轻便,更精简
Java采用Unicode字符集,C++通常用ASCII字符集。但ASCII是Unicode的子集,对于习惯于ASCII的程序员感觉不到区别
Java中的boolean类型不能转换成其他类型,反之亦然。C++最近引进了bool类型,代表布尔类型,整型也作为逻辑判断
模板是一种“泛型编程思想”,它有别于“面向对象编程思想”。C++在很大程度上已经支持了这种新型编程方法,特别是STL的出现
Java目前仍未支持泛型编程,不过据说Sun公司有在Java中引入模板的计划
C++支持“运算符的重载”,这是它的一个很重要的多态特征,是数据抽象和泛型编程的利器。它允许直接对对象进行四则运算,正像基本数据类型那样
Java不支持这种多态机制,也是为降低复杂性
两种语言都支持方法重载(overloading)
在C++中,为了允许运行时动态决定哪个函数被调用,一个函数必须用virtual修饰。virtual关键字被自动继承,用以支持多态
凡是没有用virtual修饰的成员函数(包括static)都是静态绑定的,即在编译时决定调用哪个版本
而在Java中,除了static、final、private是静态绑定以外,所有方法一律按动态绑定处理
C++中有“拷贝构造函数”的概念,在三种情况下,自动调用它
用一个对象初始化另一对象
对象作实参进行函数调用
对象作函数的返回值
通常,当一个对象需要做“深拷贝”(钱能:《C++程序设计教程》)时,我们需要为它事先定义“拷贝构造函数”、“赋值运算符的重载函数”和“析构函数”;否则编译器将以“按位”的形式自动生成相应的缺省函数。倘若类中含有指针成员或引用成员,那么这三个默认的函数就隐含了错误
Java则没有这种语法结构和语义逻辑
C++支持inline函数,可以避免函数的堆栈调用,提高运行效率
Java无这种语义
C++中,构造函数的初始化列表是这样使用的:首先按继承顺序调用基类的构造函数构造基类对象,然后按声明顺序调用成员对象的构造函数构造成员对象,最后对列表中出现的成员变量做初始化
Java不采用初始化列表这种构造机制
它们的构造顺序基本一致:
静态变量初始化
静态初始化块(Java)
调用基类的构造函数构造基类对象
实例变量的初始化
构造函数的其余部分
Java使用abstract关键字修饰抽象方法或抽象类
C++的对等语法是“纯虚函数”和“抽象类”
两者都使用抽象类作为继承层次中的基类,提供一般概念,由子类实现其抽象方法,且抽象类都不能被直接实例化为对象
Java中有final关键字,修饰类、方法或变量
final类不能被继承
final方法不能被子类覆盖
final变量就是常量
C++中没有这个关键字,常量可以使用const或#define定义
const还可以修饰成员函数,即“常成员函数”,当一个const成员函数修改成员数据,或调用非const成员函数时,编译器会报错
我们应将不修改成员数据的函数声明为const
Java和C++中的static关键字语法和语义基本相同
static成员变量又叫类变量,被类的所有对象共享
A::x (C++):必须在类体外初始化
A.x (Java):必须在类体内初始化
static成员方法又叫类方法,访问static变量
A::f( ) (C++)
A.f( ) (Java)
两者都有内部类和局部类的语法和语义
Java中没有友元函数和友元类的概念,严格支持封装,不允许外部方法访问类的私有成员
而C++支持friend关键字,允许外部方法访问类的私有成员,因此不是一种纯面向对象的编程语言
Java中类或interface可以用public修饰,也可以不修饰;而C++类不能修饰
三种访问权限的语义相同,语法略有差别
C++中还有继承权限修饰符,Java则没有
class A: protected B, public C (C++)
Ⅹ java基础语法部分有哪些
Java的基础语法包括:
1. 开发环境搭建
2. 常量
3. 变量
4. 数据类型
5. 运算符
6. 选择结构-if-switch
7. 循环结构-while-【do-while】-for以及各种循环控制与多层嵌套循环
8. 方法的设计与使用
9. 数组
10. 递归
11. 冒泡-选择等多种排序
12. 二分查找
13. 线性查找