总结1-12


1.注释,标识符,关键字

注释

  • 单行注释: //内容
  • 多行注释: /内容/
  • 文档注释: /** 内容 */

关键字

abstract assert boolean break byte
case catch char class const
continue default do double else
enum extends final finally float
for goto if implements import
instanceof int interface long native
new package private protected public
return strictfp short static super
switch synchronized this throw throws
transient try void volatile while
  • Java 所有的组成部分都需要名字。类名,变量名以及方法名都被称为标识符。

标识符注意点

  • 所有标识符都应该以字母(A-Z 或 a-z),美元符($),或者下划线(_)开始,
  • 首字符之后的字母数字任何字符搭配组合都可以
  • 不能使用关键字作为变量名或方法名。
  • 标识符是大小写敏感的
  • 合法标识符举例:age ,$salary,_value,_1_value
  • 非法标识符举例:123abc,-salary,#abc
  • 可以使用中文命名,但是一般不建议这样去使用,也不建议使用拼音

例如这里的 String Hello = "HelloWorld"; Hello就是标识符


java public class Hello{
   public static void main(String[] args)
   {String Hello = "HelloWorld";
   System.out.println(Hello);
   }
}

2.数据类型

  • 强类型语言

  • 变量的使用要严格符合规定,所有变量都必须先定义后才能使用.
  • 弱类型语言

  • 弱类型语言是一种弱类型定义的语言,某一个变量被定义类型,该变量可以根据环境变化自动进行转换,不需要经过显性强制转- - 换。弱类型语言包括vb 、PHP、javascript等语言。

八大基本数据类型

数值类型:

  • 整数型:
  • byte:占字节范围 -128-127
  • short:占2个字节范围:-32768-32767 //2字节就是16bit位,65535换算成2进制16个1,超过8个1才算超出范围
  • int:占4个字节范围:-2147483648-2147483647
  • long:占8个字节范围:-9223372036854775808-9223372036854775807
  • 浮点类型:小数类型
  • float:占4个字节
  • double:占8个字节
  • 字符类型:
  • char:占2个字节 //文本
  • boolean类型:占1位其值只有true和false //是或非
public class Demo01 {
    public static void main(String[] args)
    {//八大基本数据类型
    // 整数
   int num1 =10; //最常用
   byte num2 = 20;
   short num3 = 30;
   long num4 = 30L; //long 类型要在数字后面加L
    //小数:浮点数
    float num5 =50.2F; //float 类型要在数字后面加F
    double num6 =100.3232;
    //字符:文本
    char name ='是' //中文占两个字节,限制最多两个字节
    //string name = "试试"  不属于八大基本数据类型,属于类
    //布尔值:是true 非false
    boolean flag =true;
    boolean flag =false;
}

3.类型转换

  • 由于java是强类型语言,所以要进行有些运算的时候,需要用到类型转换
  • 低---------到--------高
  • byte,short,char--->int--->long----->float----->double
  • 运算中,不同类型的数据先转化为同一类型,然后进行运算(boolean不能进行转换)
  • 强制转换 (类型)变量名 高---低
  • 自动转换 低---高
public class Demo01{
public static void main(String[] args)
{  int i = 128;
   byte n = (byte) i ;  //高转低,把 i 强制转换为byte,数据会溢出,byte数值范围在 -128 ~127
   double b = i ;  //低转高不需要强制转换,自动转换

/*
注意点:
1.不能对布尔值进行转换
2.不能对不同的类型进行转换
3.在把高容量转换到低容量的时候,强制转换
4.转的时候可能存在内存溢出,或者精度问题。
*/

//精度
System.out.println("======分割线=======");
System.out.println((int)23.7);   /输出23 ,存在精度问题,会舍去小数点后面的数字
System.out.println((int)-45.53);  /输出-45,存在精度问题
//内存溢出
int money = 10_0000_0000;  //符号 _ 不会被输出,方便查看数字
int years = 20;
int total = money*years;  //输出-1474836480  ,计算时内存溢出
long total2 = money*years;   //默认时int,转换之前就存在问题
long total3 = money*((long)years);   //先把一个数转换为Long
System.out.println(total3);  //输出就正常了
}
}

4.变量,常量

变量

  • 变量:可以变化的量叫变量.
  • Java是一种强类型语言,每个变量都必须声明其类型.
  • Java变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域.
type name = value;
//数据类型  变量名  值  可以使用逗号隔开声明多个同类型的变量.

注意事项:

  • 每个变量都有类型,类型可以是基本类型,也可以是引用类型.
  • 变量名必须是合法的标识符。
  • 变量声明是一条完整的语句,因此每一个声明都必须以分号结束.

常量

  • 常量(Constant):初始化(initialize)后不能在改变,不会变动的值.
  • 常量可以理解成一种特殊的变量,他的值被设定后,在程序运行过程中不允许被改变.
final 常量名 = 值 ;
final double PI = 3.14;
  • 常量名一般使用大写字符.

变量的命名规范

  • 所有变量,方法,类名:见名知意
  • 类成员变量:首字母小写和驼峰原则:monthSalary 除了第一个单词以外,后面的单词首字母大写 lastName
  • 局部变量:首字母小写和驼峰原则
  • 常量:大写字母和下划线:MAX_VALUE
  • 类名:首字母大写和驼峰原则:Man,GoodMan
  • 方法名:首字母小写和驼峰原则:run(),runRun()
public class Variable{
static int allClicks=0;     // 类变量
string str="hello world";  //实例变量

public void method(){
int i = 0;                        //局部变量

}
}

5.运算符

  • Java 语言支持如下运算符

  • 算术运算符: +, -, *, /, %, ++, --
  • 赋值运算符: =
  • 关系运算符: >, <, >=, <=, ==, !=instanceof
  • 逻辑运算符: &&, ||, !
  • 位运算符: &, |, ^, ~, >>, <<, >>> (了解)
  • 条件运算符: ?:
  • 扩展赋值运算符: +=, -=, *=,/=

算术运算

算术运算符: +, -, *, /, %, ++, -- //加减乘除 取模 自增 自减
+ - * /:加减乘除

int i =3; byte b = 4; long l = 5;
int n = i+b; //结果类型为int
int m = i+l;//结果类型为long
  • 总结:

  • 除了long类型,byte short int 进行运算结果都为int,与long类型进行运算结果都为long 类型

  • % :取模 取余数(11/2=5余1)(13%2=6;余1输出的结果就是1)

  • ++ -- : 自增 自减 一元运算符 a++是先进行取值,后进行自增。++a是先进行自增,后进行取值。

  • 例如:a=2 a++ = 2 ++a = 4 前者是先取值,再加1,所以输出 2。后者是先加1后取值,把前者的自增的结果再自增 2+1+1=4

  • 赋值运算符: = //把一个值赋值给变量 例:int a = 10;

  • 关系运算符: >, < , >= , <=, == ,!=instanceof // == 表示相等 != instanceof 不相等

  • 逻辑运算: && , || , ! //与 或 非

  • && : 与 逻辑与运算,两个变量都为真,结果才为true

  • || : 或 逻辑运算,两个有一个为真,结果为true

  • ! : 非 如果是真,结果为假,结果相反

  • 例如:

int c = 5;
boolean d = (c<4)&&(c++<4);  // false && false  
System.out.println(d);     // false
System.out.println(c);    // 5
  • 位运算符: & , | , ^ , ~ , >> , << , >>>
  • 位运算: 位运算都是二进制运算
  • &与 |或 ^异或 ~取反 >>右移运算符 <<左移运算符
  • 例如:
a= 0011 1100;
b= 0000 1101;
a&b=0000 1100; //a与b 上下比较,都为1结果为1,其他为0
a|b=0011 1101; //a或b 上下比较,有一个为1结果都为1,都为0结果为0
a^b=0011 0001;  //a异或b 上下比较,相同为0,不相同为1
~b=1111 0010;   //取反 b 为0则1,为1则0
a << 2;   //<<  *2 把二进制的1向前移动两位后面补00 a=1111 0000
a >> 2;   //>>  /2 把二进制的1向后移动两位后面补00 a=0000 1111

条件运算符: ?:

//三元运算符
//x ? y : z
//如果x==true,则结果为y,否则结果为z
int score = 50;
string type = score < 60 ? "及格":"不及格" ;  //输出为true,不及格 重点掌握
// 和 if 类似 

扩展赋值运算符: += , -= ,*= , /=

int a=10;  
int b = 20;
a+=b;    //a=a+b
a-=b;    //a=a-b

扩展面试题

//字符串连接符  string
System.out.pintln(""+a+b);   //计算出结果1020,将a与b拼接成1020字符串类型
System.out.pintln(a+b+"");   //计算结果是30
  • 字符串在前面,输出的就是字符类型。整数型在前面,输出的就是整数型。根据最前面的数据类型来判断输出的结果。

6.包机制,JavaDoc

包机制

  • 为了更好的组织类,java提供了包机制,用于区别类名的命名空间。

  • 包语句的语法格式为:

  • package pkg1[.pkg2[.pkg3...]];

  • 一般利用公司名的倒置作为包名

  • 例如: com.neil.www

  • src->New->Package->com.neil.www

  • 如下设置把Compact Middle Package 勾选去掉,就可以分类显示

  • 为了能够使用某一包的成员,我们需要在java程序中明确导入该包。使用 import 语句可完成此功能

  • import package1[.package2...].(classname|*);

package com.neil;
//import com.neil.*; 导入包下所有的类
import com.neil.Hello; //加载 另外一个包下的类
public class Hello{
    public static void main(String[] args)
    {String Hello = "HelloWorld";
    System.out.println(Hello);
    }
}

JavaDoc

  • Javadoc命令是用来生成自己API文档的
参数信息
@author    //作者名
@version   //版本号
@since     //指明需要最早使用的jdk版本
@param     //参数名
@return    //返回值情况
@throws    //异常抛出情况

package com.neil.base;
/**
*@author neil
*@version 1.0
*@since 1.8
*/
public class Doc{
string name;
/**
*@autor neil
*@param name
*@return
*@ Exception
*/
public String test(String name) throws Exception{
return name;
}
}

  • 设置为UTF-8,编译成文档供大家阅读
  • javadoc -encoding UTF-8 -charset UTF-8 Demo04.java

  • 生成index.html,打开就可以看到操作文档

  • 以上是通过命令行 javadoc 参数 Java 文件

使用IDEA生成JavaDoc文档

  • 设置 IDEA Tools-->Generate JavaDoc

  • 标注的是重要的部分,输出文件夹路径以及命令行参数。

  • 这里的命令行参数很重要,因为只有使用 utf-8 编码才能保证生成时可以正常处理中文字符,所以一定要加上:

-encoding utf-8 -charset utf-8

  • 生成JavaDoc文件,打开index.html就可以查看文档了

posted @ 2021-04-16 16:58  Nei|  阅读(62)  评论(0)    收藏  举报