Loading

JAVA笔记

IDEA快捷操作:

public static void main(String[] args) { }
快捷操作:pvsm

System.out.println();
快捷操作:sout

JavaDoc生成文档

@author作者名
@version版本号
@since 指明需要最早使用的jdk版本
@param参数名
@return 返回值情况
@throws异常抛出情况

Java注释:

  1. 单行注释
//单行注释
  1. 多行注释
/*多行注释*/
  1. 文档注释
 /**
 * 这个类演示了文档注释`
 * @author Ayan Amhed`
 * @version 1.2`
 */

java标识符

  1. 所有的标识符都应该以字母(A-Z 或者 a-z),美元符($)、或者下划线(_)开始
  2. 首字符之后可以是字母(A-Z 或者 a-z),美元符($)、下划线(_)或数字的任何字符组合
  3. 关键字不能用作标识符
  4. 标识符是大小写敏感的

java数据类型

  1. 基本类型(primitive type)
    整型:byte 1子节、short 2子节、int 4子节、long 8子节
    浮点类型:float 4子节、double 8子节
    字符型:char 2子节
    布尔类型:boolean 又称为逻辑类型,只有true和false两个值,表示真和假。

  2. 引用类型(reference type)
    类、接口、数组

转义字符:

字符 意义 字符 意义 字符 意义
' 单引号 \t 制表符 \b 退格
" 双引号 \r 回车 \f 换页
\ 反斜杠 \n 换行 \0 空字符

数据类型转换

语法:
	(类型名)要转换的值

变量的命名规范:

所有变量、方法、类名:见名知意

  1. 类成员变量:首字母小写和驼峰原则:monthSalary除了第一个单词以外,后面的单词首母大写 lastname lastName
  2. 局部变量:首字母小写和驼峰原则
  3. 常量:大写字母和下划线:MAX_VALUE
  4. 类名:首字母大写和驼峰原则:Man,GoodMan
  5. 方法名:首字母小写和驼峰原则:run(),runRun()

运算符:

  1. 赋值运算符(=)
  2. 算术运算符(+(加)、-(减)、*(乘)、/(除)、%(取余))
  3. 自增、自减运算符(++、--)
  4. 比较运算符(大于(>)、小于(<)、等于(==)、大于等于(>=)、小于等于(<=)、不等于(!=))
  5. 逻辑运算符(与(&&)、或(||)、非(!))
  6. 三元运算符(条件式?值1:值2)
  7. 位运算符:<<左移位 >>右移位 >>>无符号右移位
  8. 位逻辑运算符:&逻辑与、| 逻辑或、!逻辑非、&& 短路与、|| 短路或、 ^ 逻辑异或
  9. 复合运算符:+=、-=、*=、/=、%=、&=、|=、^=、<<=、>>=、>>>=

方法

语法
	修饰符 返回值类型 方法名(参数列表){
		代码
		return;
	}

分支结构

if-else语句

  1. if语句
  2. if...else语句
  3. if...else if...else语句
if(关系表达式){
语句体1;
}else{
语句体2;
}

switch语句

switch(表达式){
    case 常量值1 :
       语句1;
       break;
    case 常量值2 :
       语句2;
       break; 
    ......
    default : 
}

循环结构

for循环

for(赋初值;判断条件;赋值加减){
//执行语句
}

while循环

while循环的基本格式:
        while(判断条件语句) {
        循环体语句;
        }

do...while循环

do {
         执行语句
} while(循环条件);

特殊流程控制语句

break、continue、return
  1. break是跳出当前所在的循环,执行循环后面的语句;
  2. continue是跳出当前这次循环,继续下一次循环。
  3. return跳出当前所在的方法,是返回方法调用者一个数据。

死循环

while(true){
//循环体
}

数组

一维数组

动态初始化:数组声明且为数组元素分配空间与赋值的操作分开进行

int[] arr = new int[3];
arr[0] = 3;
arr[1] = 9;
arr[2] = 8;

静态初始化:在定义数组的同时就为数组元素分配空间并赋值。

int a[] = new int[]{ 3, 9, 8};
int[] a = {3,9,8};

二维数组

格式1(动态初始化):int[][] arr = new int[3][2];
格式2(动态初始化):int[][] arr = new int[3][];
格式3(静态初始化):int[][] arr = new int[][]{{3,8,2},{2,7},{9,0,1,6}};

遍历数组

for each循环

语法:
	for(type x:obj){ 引用了x的java语句 }

数组操作常见问题:

  1. 数组下标越界异常(ArrayIndexOutOfBoundsException)
int[] arr = new int[2];
System.out.println(arr[2]);
访问到了数组中的不存在的脚标时发生。
  1. 空指针异常(NullPointerException)
int[] arr = null;
System.out.println(arr[0]);
arr引用没有指向实体,却在操作实体中的元素时。

★注意特殊写法情况:int[] x,y[]; x是一维数组,y是二维数组。

面向对象编程

  1. 面向对象(OOP)与面向过程(POP)
  2. 面向对象的三大特征:
    封装 (Encapsulation)
    继承 (Inheritance)
    多态 (Polymorphism)

类和对象

类的语法格式

修饰符 class  类名 {
	属性声明;
	方法声明;
}

方法

[权限修饰符][返回值类型] 方法名 ([参数类型 参数名])[throws 异常类型] { 
//方法体  
return 返回值;     }

  1. 方法的返回值:任何数据类型、任何可用的类、任意类型的数组、无返回值
    注意:1.如果有返回值,一定要使用return关键字返回相应类型的数据 2.return会强制中断方法
  2. 方法的参数
    注意:1.参数可以有多个,不限类型 2.每一个参数都必须生命参数类型 3.调用方法时,注意参数的顺序
    参数的种类:值参数、引用参数、不定长参数

对象的语法格式

类名 对象名 = new 类名()

使用对象访问类中的成员

对象名.成员变量
对象名.成员方法

类的主方法:

public static void main (String[] args) {  //方法体 }

封装:

封装的操作——private关键字:

格式:
	private 数据类型 变量名;

封装优化1——this关键字

this代表类本身的对象

this代用自身构造方法:
public class Bird {  
	String name;    
	public Bird() {    
		this(“企鹅”);     
	}
	public Bird(String name) {  
	this.name = name; 
	}
}

封装优化2——构造方法

构造方法就是与类同名的方法,对象的创建就是通过构造方法完成的
★注意:
1.构造方法与类名相同
2.构造方法没有返回值

继承:

extends关键字

示例:
	public class Pad extends Computer {   ………  }

Scanner对象

Scanner类用来获取用户输入的内容

语法:
      Scanner s = new scanner(System.in);

通过Scanner类的next()与nextLine()方法获取输入的字符串,在读取钱我们一般需要使用hasNext()与hasNextLine()判断是否还有输入的数据。

  • next():
    1、一定要读取到有效字符后才可以结束输入。
    2、对输入有效字符之前遇到的空白,next()方法会自动将其去掉。
    3、只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符。
    4、next()不能得到带有空格的字符串。
  • nextLine():
    1、以Enter为结束符,也就是说nextLine()方法返回的是输入回车之前的所有字符。
    2、可以获得空白。
posted @ 2021-02-01 19:26  北络  阅读(76)  评论(0编辑  收藏  举报