注释
每种语言,第一个教我们的都是“注释”。Java基本有如下三种注释。
1 2 3
|
/** JavaDoc(Java文档)注释是这样的。可以用来描述类和类的属性。 */
|
文件头
包
包就像定义文件路径一样,实际上的存储也是按包的名称存储。
导入类
导入一个类:
1
|
import java.util.ArrayList;
|
导入所有类:
1
|
import java.security.*;
|
书写类
每个 .java
文件都包含一个public类,这个类的名字必须和这个文件名一致。
1
|
public class LearnJava {
|
每个程序都需要有一个main函数作为入口:
1
|
public static void main (String[] args) {
|
标准输出:
1
|
System.out.println("Hello World!");
|
使用+
来拼接字符串:
1 2 3 4
|
System.out.println( "Integer: " + 10 + " Double: " + 3.14 + " Boolean: " + true);
|
如果要在输出后不想自动换行,可以使用System.out.print方法:
1 2
|
System.out.print("Hello "); System.out.print("World");
|
类型与变量
基本类型定义
用
来声明变量:
1 2 3 4 5 6 7 8 9 10 11
|
byte fooByte = 100; short fooShort = 10000; int fooInt = 1; long fooLong = 100000L; float fooFloat = 234.5f; double fooDouble = 123.4; boolean fooBoolean = true; char fooChar = 'A'; final int HOURS_I_WORK_PER_WEEK = 9001; String fooString = "My String Is Here!";
|
数组
数组在声明时大小必须已经确定
数组的声明格式:
<数据类型> [] <变量名> = new <数据类型>[<数组大小>];
1 2 3
|
int [] intArray = new int[10]; String [] stringArray = new String[1]; boolean [] booleanArray = new boolean[100];
|
声明并初始化数组也可以这样:
1
|
int [] y = {9000, 1000, 1337};
|
随机访问数组中的元素:
1
|
System.out.println("intArray @ 0: " + intArray[0]);
|
数组下标从0开始并且可以被更改:
1 2 3
|
intArray[1] = 1; System.out.println("intArray @ 1: " + intArray[1]);
|
其他数据类型
ArrayLists - 类似于数组,但是功能更多,并且大小也可以改变,主要有:
- LinkedLists
- Maps
- HashMaps
操作符
多重申明
算数运算
1 2 3 4
|
System.out.println("1+2 = " + (i1 + i2)); System.out.println("2-1 = " + (i2 - i1)); System.out.println("2*1 = " + (i2 * i1)); System.out.println("1/2 = " + (i1 / i2));
|
取余
1
|
System.out.println("11%3 = "+(11 % 3));
|
比较操作符
1 2 3 4 5 6
|
System.out.println("3 == 2? " + (3 == 2)); System.out.println("3 != 2? " + (3 != 2)); System.out.println("3 > 2? " + (3 > 2)); System.out.println("3 < 2? " + (3 < 2)); System.out.println("2 <= 2? " + (2 <= 2)); System.out.println("2 >= 2? " + (2 >= 2));
|
位运算操作符
自增
1 2 3 4
|
int i = 0; System.out.println("\n->Inc/Dec-rementation");
|
1 2 3 4
|
System.out.println(i++); System.out.println(++i); System.out.println(i--); System.out.println(--i);
|
控制结构
If语句和C的类似
1 2 3 4 5 6 7 8
|
int j = 10; if (j == 10){ System.out.println("I get printed"); } else if (j > 10) { System.out.println("I don't"); } else { System.out.println("I also don't"); }
|
While循环
1 2 3 4 5 6 7 8 9
|
int fooWhile = 0; while(fooWhile < 100) { fooWhile++; } System.out.println("fooWhile Value: " + fooWhile);
|
Do While循环
1 2 3 4 5 6 7 8 9
|
int fooDoWhile = 0; do { fooDoWhile++; }while(fooDoWhile < 100); System.out.println("fooDoWhile Value: " + fooDoWhile);
|
For 循环
1 2 3 4 5 6 7
|
int fooFor;
for(fooFor=0; fooFor<10; fooFor++){ } System.out.println("fooFor Value: " + fooFor);
|
Switch Case 语句
switch可以用来处理 byte, short, char, 和 int 数据类型,也可以用来处理枚举类型,字符串类,和原始数据类型的包装类:Character, Byte, Short, 和 Integer
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
|
int month = 3; String monthString; switch (month){ case 1: monthString = "January"; break; case 2: monthString = "February"; break; case 3: monthString = "March"; break; default: monthString = "Some other month"; break; } System.out.println("Switch Case Result: " + monthString);
|
类型转换
数据转换
将字符串转换为整型
1
|
Integer.parseInt("123");//返回整数123
|
将整型转换为字符串
1
|
Integer.toString(123);//返回字符串"123"
|
其他的数据也可以进行互相转换:
类型转换
你也可以对java对象进行类型转换, 但其中会牵扯到很多概念在这里可以查看更详细的信息: http://docs.oracle.com/javase/tutorial/java/IandI/subclasses.html
方法
用new来实例化一个类
1
|
Bicycle trek = new Bicycle();
|
调用对象的方法
1 2
|
trek.speedUp(3); // 需用getter和setter方法 trek.setCadence(100);
|
toString 可以把对象转换为字符串
1
|
System.out.println("trek info: " + trek.toString());
|
你也可以把其他的非public类放入到.java文件中!!
类定义的语法
1 2 3 4
|
<public/private/protected> class <类名>{ }
|
构造方法
构造方法不写返回值,返回类型,必须是public
。
以下是一个默认构造函数
1 2 3 4 5 6
|
public Bicycle() { gear = 1; cadence = 50; speed = 5; name = "Bontrager"; }
|
以下是一个含有参数的构造函数
1 2 3 4 5
|
public Bicycle(int startCadence, int startSpeed, int startGear, String name) { this.gear = startGear; this.cadence = startCadence; this.speed = startSpeed; this.name = name;
|
方法书写语法
<public/private/protected> <返回值类型> <函数名称>(<参数列表>)
Java类中经常会用getter和setter来对成员变量进行操作。
类的继承
PennyFarthing 是 Bicycle 的子类
1
|
class PennyFarthing extends Bicycle {
|
通过super
调用父类的构造函数
1 2 3
|
public PennyFarthing(int startCadence, int startSpeed){ super(startCadence, startSpeed, 0, "PennyFarthing"); }
|
你可以用@注释
来表示需要重载的方法
1 2 3 4 5 6
|
@Override public void setGear(int gear) { gear = 0; }
}
|
The link of this page is https://blog.nooa.tech/articles/50525a4c/ . Welcome to reproduce it!