public class HelloWorld {
/* 第一个Java程序 * 它将打印字符串
Hello World
*/
public static void main(String[] args) {
System.out.println("Hello World");
// 打印 Hello World
} }
(.java)
(切记Java是大小写敏感),文件名的后缀为.java。(如果文件名和类名不相同则会导致编译错误)
Java标识符
Java所有的组成部分都需要名字。
A-Z 或者 a-z),美元符($)、或者下划线(_)开始
A-Z 或者 a-z),美元符($)、下划线(_)或数字的任何字符组合
age、$salary、_value、__1_value
123abc、-salary
** Java修饰符**
Java可以使用修饰符来修饰类中方法和属性。主要有两类修饰符:
1.
default ,public , protected , private
default (即缺省,什么也不写): 在同一包内可见,不使用任何修饰符。使用对象:类、接口、变量、方法。
private : 在同一类内可见。使用对象:变量、方法。
public : 对所有类可见。使用对象:类、接口、变量、方法
protected : 对同一包内的类和所有子类可见。使用对象:变量、方法。
2.
: final, abstract, static, synchronized
final 变量
final 变量能被显式地初始化并且只能初始化一次。被声明为 final 的对象的引用不能指向不同的对象。但是 final 对象里的数据可以被改变。也就是说 final 对象的引用不能改变,但是里面的值可以改变。
final 修饰符通常和 static 修饰符一起使用来创建类常量
Public class Test{
Final int value =10;
//下面是声明常量的实列
Public static final int BOXWIDTH=6;
Static final String TITLE=“Manager”;
Public void changeValue(){
Value =12;
}
}
// error: cannot assign a value to final variable value
// value = 12; //将输出一个错误
// ^
// 1 error
final 方法
final 方法可以被子类继承,但是不能被子类修改。
final 方法的主要目的是防止该方法的内容被修改。
final 修饰符声明方法。
public class Test {
public final void textMethod(){
//方法体
}}
final 类
final 类不能被继承,没有类能够继承 final 类的任何特性。
public final class Test{
//类体
}
abstract 修饰符
abstract 和 final 修饰。如果一个类包含抽象方法,那么该类一定要声明为抽象类,否则将出现编译错误。
abstract class Test { //抽象类
private double height;
private String name;
private Date birth;
public abstract void hear(); //抽象方法
public abstract void eat(); //抽象方法
}
public abstract sample();
Public abstract class SuperClass{
Abstract void testMethod(); //抽象方法
}
Class SubClass extends SuperClass{
//实现抽象方法
Void testMethod(){
//............
}
}
final和static
//final 不能同时和abstract使用,因为abstract是需要被子类继承覆盖的否则毫无意义
/而abstract需要被继承实现两者相互矛盾
Abstract final void testMethod();
//static 和abstract也是不能连用的因为static是类级别的不能被子类覆盖
//而abstract需要被继承实现,两者相互矛盾。
Abstract final void testMethod();
synchronized 修饰符
synchronized 关键字声明的方法同一时间只能被一个线程访问。synchronized 修饰符可以应用于四个访问修饰符。
public synchronized void buyTicket(){
//.......
}
Java 变量
Java 枚举
class FreshJuice {
enum FreshJuiceSize{ SMALL, MEDIUM , LARGE }
FreshJuiceSize size;
}
public class FreshJuiceTest {
public static void main(String[] args){
FreshJuice juice = new FreshJuice();
juice.size = FreshJuice.FreshJuiceSize.MEDIUM ;
} }
Java 关键字(这些保留字不能用于常量、变量、和任何标识符的名称)。
private 私有的、protected 受保护的 public 公共的 default 默认
abstract 声明抽象 slass 类 extends 扩冲继承 final 最终值不可改变的
Implements 实现(接口) interface 接口 native 本地原生方法(非Java实现)
new 新,创建static 静态 strictfp 严格,精准 synchronized 线程同步transient 短暂
Volatile 易失
break 跳出循环 case 定义一个值以供switch选择
continue 继续 default 默认 do 运行 else 否则 for 循环 if 如果 instanceof 实列
return 返回 switch 根据值选择执行 while 循环
assert 断言表达式是否为真
catch 捕捉异常
finally 有没有异常都执行
throw 抛出一个异常对象throws 声明一个异常可能被抛出try 捕获异常
import 引入package 包
boolean 布尔型 byte 字节型 char 字符型
double双精度浮点 float单精度浮点 int 整型 long长整型 short短整型
super 父类超类 this本类 void 无返回值
goto 是关键字但不能使用 const 是关键字但不能使用 null 空