关键字
//创建Scanner对象
Scanner s = new Scanner(System.in);
//输入字符串
s.next()
//输入数字
s.nextInt()
数组
内存中一片连续的存储空间,用来放置同种类型的一组数据。
流程控制
Java程序执行的入口是main()方法:
public static void main(String[] args){ // main
}
顺序结构
程序自上而下的一条一条的执行,直至结束。
选择结构
三目运算符
语法:
数据类型 变量 = 条件表达式?值1:值2;
说明:
- 如果条件表达式为true,变量的值为值1,否则变量的值为值2。
- 值1和值2的类型是相同的
- 数据类型指的是值1和值2的类型
语法:
if(条件表达式1){
//语句1
} else if(条件表达式2){
//语句2
} else if(条件表达式3){
//语句3
}……
else {
//语句n
}
说明:
如果条件表达式1的值为true,则执行语句1;否则如果条件表达式2的值为true,则执行语句2;否则如果条件表达式3的值为true,则执行语句3……如果所有表达式的值都不为真,则执行语句n。
switch语句语法:
switch(变量){
case 值1:
//语句1
break;
case 值2:
//语句2
break;
case 值3:
//语句3
break;
……
default:
//语句n
}
说明:
如果变量的值等于值1,则执行语句1;如果变量的值等于值2,则执行语句2;如果变量的值等于值3,则执行语句3……如果都不等于则执行语句n
循环结构 for循环语法:
for(循环变量初始化;循环运行条件;循环变量自动修正){
//语句(循环体)
}
说明:
当循环运行条件满足时,一直执行循环体。
while循环
语法:
while(循环运行条件){
//语句(循环体)
}
说明:
- 当循环运行条件满足时,执行循环体
- 在循环体中,一定要有一个改变循环变量值的语句,否则程序会死循环 示例:
对应Java中的文件夹,用来组件管理代码的。 所有的Java类都应该放在包中,不要直接放在src目录中。
常用类 Math和数学相关的类。
示例
public static void main(String[] args) {
int digit = (int) (Math.random()*900+100);
System.out.println(digit);
//求绝对值
System.out.println(Math.abs(-55));
//向上取整
System.out.println(Math.ceil(-1.5));
//向下取整
System.out.println(Math.floor(-4.5));
//求两个数的最大值
System.out.println(Math.max(88, 12));
//求两个数的最小值
System.out.println(Math.min(88, 22));
//求一个数的多少次幂
System.out.println(Math.pow(3, 4));
//求圆周率
System.out.println(Math.PI);
}
String
双引号括起来的字符序列。
类和对象
访问控制修饰符
访问控制符说明public公共的,谁都可以用protected受保护的,同一个包下面的能用默认就是什么都不写,用于继承private私有的,只能自己能用
类的语法:
访问控制修饰符 class 类名{
属性
构造方法
普通方法
}
说明:
-
类的访问控制修饰符有:public 、默认
-
属性语法:访问控制修饰符 数据类型 变量名;
-
构造方法语法:
访问控制修饰符 类名(数据类型 变量名, 数据类型 变量名……){ }
-
普通方法语法:
访问控制修饰符 返回值类型 方法名(数据类型 变量名, 数据类型 变量名……){ }
-
属性、构造方法、普通方法的访问控制修饰符都可以是:public、protected、默认、private
相当于变长的数组
接口
接口定义
接口是用来制订规范的。
语法:
public interface 接口名{
方法声明
}
说明:
- 接口中的方法声明,只有声明,没有方法体,也就是没有{}
- 接口中声明的方法都是public的,故public可写也可以省略
有了接口之后 ,类定义的语法:
访问控制修饰符 class 类名 implements 接口名{
属性
构造方法
普通方法
}
示例
public interface UserDao {//接口:用来定义规范
public void insertUser();
public void updateUser();
void deleteUser();
void selectUsers();
}
//implements UserDao 表示按钮UserDao的规范写代码
public class UserDaoImpl implements UserDao {
@Override
public void insertUser() {
}
@Override
public void updateUser() {
}
@Override
public void deleteUser() {
}
@Override
public void selectUsers() {
}
}
继承
有了继承之后,类的定义
访问控制修饰符 class 类名 extends 父类名{
属性
构造方法
普通方法
}
如果想让我们的类拥有别的类的功能,就可以使用继承。 示例 父类:
public class AA {
//公开的功能,子类可以继承
public void fun() {
System.out.println("fun");
}
//私有的功能,子类不能继承
private void sth() {
System.out.println("sth");
}
}
子类:
public class ABCD extends AA {
public static void main(String[] args) {
ABCD abcd = new ABCD();
abcd.fun();
//abcd.sth();
}
}
完整的类的定义
语法:
访问控制修饰符 class 类名 extends 父类名 implements 接口名1, 接口名1….{
属性
构造方法
普通方法
}
说明:Java是单继承多实现的:Java只能有一个父类,但可以实现多个接口。
示例:
public class ArrayList extends AbstractList
implements List, RandomAccess, Cloneable, java.io.Serializable